diff options
Diffstat (limited to 'filter/source/config')
783 files changed, 22920 insertions, 0 deletions
diff --git a/filter/source/config/cache/basecontainer.cxx b/filter/source/config/cache/basecontainer.cxx new file mode 100644 index 000000000000..800876ce1abd --- /dev/null +++ b/filter/source/config/cache/basecontainer.cxx @@ -0,0 +1,638 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "basecontainer.hxx" +#include "constant.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp> +#include <com/sun/star/uno/Type.h> +#include <comphelper/enumhelper.hxx> +#include <osl/diagnose.h> + +//_______________________________________________ +// namespace + +#define LOAD_IMPLICIT + +namespace css = ::com::sun::star; + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +::salhelper::SingletonRef< FilterCache >* BaseContainer::m_pPerformanceOptimizer = 0; + +/*----------------------------------------------- + 03.03.2004 11:37 +-----------------------------------------------*/ +BaseContainer::BaseContainer() + : BaseLock ( ) + , m_rCache ( ) + , m_pFlushCache(NULL ) + , m_lListener (m_aLock) +{ + m_rCache->load(FilterCache::E_CONTAINS_STANDARD); + + // GLOBAL SAFE (!) -> ----------------------- + // TODO use rtl pattern to create it realy threadsafe! + ::osl::ResettableMutexGuard aGlobalLock(::osl::Mutex::getGlobalMutex()); + if (!m_pPerformanceOptimizer) + m_pPerformanceOptimizer = new ::salhelper::SingletonRef< FilterCache >(); + aGlobalLock.clear(); + // <- GLOBAL SAFE (!) ----------------------- +} + +/*----------------------------------------------- + 02.07.2003 10:16 +-----------------------------------------------*/ +BaseContainer::~BaseContainer() +{ +} + +/*----------------------------------------------- + 03.07.2003 11:16 +-----------------------------------------------*/ +void BaseContainer::init(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR , + const ::rtl::OUString& sImplementationName, + const css::uno::Sequence< ::rtl::OUString >& lServiceNames , + FilterCache::EItemType eType ) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + m_sImplementationName = sImplementationName; + m_lServiceNames = lServiceNames ; + m_xSMGR = xSMGR ; + m_eType = eType ; + m_xRefreshBroadcaster = css::uno::Reference< css::util::XRefreshable >( + xSMGR->createInstance(SERVICE_FILTERCONFIGREFRESH), + css::uno::UNO_QUERY); + // <- SAFE +} + +/*----------------------------------------------- + 28.10.2003 09:04 +-----------------------------------------------*/ +void BaseContainer::impl_loadOnDemand() +{ +#ifdef LOAD_IMPLICIT + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // A generic container needs all items of a set of our cache! + // Of course it can block for a while, till the cache is realy filled. + // Note: dont load all sets supported by the cache here! + + FilterCache::EFillState eRequiredState = FilterCache::E_CONTAINS_NOTHING; + switch(m_eType) + { + case FilterCache::E_TYPE : + eRequiredState = FilterCache::E_CONTAINS_TYPES; + break; + + case FilterCache::E_FILTER : + eRequiredState = FilterCache::E_CONTAINS_FILTERS; + break; + + case FilterCache::E_DETECTSERVICE : + eRequiredState = FilterCache::E_CONTAINS_DETECTSERVICES; + break; + + case FilterCache::E_FRAMELOADER : + eRequiredState = FilterCache::E_CONTAINS_FRAMELOADERS; + break; + + case FilterCache::E_CONTENTHANDLER : + eRequiredState = FilterCache::E_CONTAINS_CONTENTHANDLERS; + break; + } + + m_rCache->load(eRequiredState); + // <- SAFE +#endif +} + +/*----------------------------------------------- + 03.03.2004 12:18 +-----------------------------------------------*/ +void BaseContainer::impl_initFlushMode() + throw (css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + if (!m_pFlushCache) + m_pFlushCache = m_rCache->clone(); + if (!m_pFlushCache) + throw css::uno::RuntimeException( + ::rtl::OUString::createFromAscii("Cant create write copy of internal used cache on demand."), + dynamic_cast< css::container::XNameAccess* >(this)); + // <- SAFE +} + +/*----------------------------------------------- + 03.03.2004 12:11 +-----------------------------------------------*/ +FilterCache* BaseContainer::impl_getWorkingCache() const +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + if (m_pFlushCache) + return m_pFlushCache; + else + return &(*m_rCache); + // <- SAFE +} + +/*----------------------------------------------- + 03.07.2003 11:12 +-----------------------------------------------*/ +::rtl::OUString SAL_CALL BaseContainer::getImplementationName() + throw (css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + return m_sImplementationName; + // <- SAFE +} + +/*----------------------------------------------- + 03.07.2003 11:14 +-----------------------------------------------*/ +sal_Bool SAL_CALL BaseContainer::supportsService(const ::rtl::OUString& sServiceName) + throw (css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + sal_Int32 c = m_lServiceNames.getLength(); + const ::rtl::OUString* pNames = m_lServiceNames.getConstArray(); + for (sal_Int32 i=0; i<c; ++i) + { + if (pNames[i].equals(sServiceName)) + return sal_True; + } + return sal_False; + // <- SAFE +} + +/*----------------------------------------------- + 03.07.2003 11:12 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > SAL_CALL BaseContainer::getSupportedServiceNames() + throw (css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + return m_lServiceNames; + // <- SAFE +} + +/*----------------------------------------------- + 20.10.2003 11:39 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::insertByName(const ::rtl::OUString& sItem , + const css::uno::Any& aValue) + throw (css::lang::IllegalArgumentException , + css::container::ElementExistException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ) +{ + if (!sItem.getLength()) + throw css::lang::IllegalArgumentException( + ::rtl::OUString::createFromAscii("empty value not allowed as item name."), + static_cast< css::container::XNameContainer* >(this), + 1); + + CacheItem aItem; + try + { + aItem << aValue; + } + catch(const css::uno::Exception& ex) + { + throw css::lang::IllegalArgumentException(ex.Message, static_cast< css::container::XNameContainer* >(this), 2); + } + + impl_loadOnDemand(); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // create write copy of used cache on demand ... + impl_initFlushMode(); + + FilterCache* pCache = impl_getWorkingCache(); + if (pCache->hasItem(m_eType, sItem)) + throw css::container::ElementExistException(::rtl::OUString(), static_cast< css::container::XNameContainer* >(this)); + pCache->setItem(m_eType, sItem, aItem); + + aLock.clear(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.03.2004 11:40 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::removeByName(const ::rtl::OUString& sItem) + throw (css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ) +{ + impl_loadOnDemand(); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // create write copy of used cache on demand ... + impl_initFlushMode(); + + FilterCache* pCache = impl_getWorkingCache(); + pCache->removeItem(m_eType, sItem); // throw exceptions automaticly + + aLock.clear(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.03.2004 11:41 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::replaceByName(const ::rtl::OUString& sItem , + const css::uno::Any& aValue) + throw (css::lang::IllegalArgumentException , + css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ) +{ + if (!sItem.getLength()) + throw css::lang::IllegalArgumentException( + ::rtl::OUString::createFromAscii("empty value not allowed as item name."), + static_cast< css::container::XNameContainer* >(this), + 1); + + CacheItem aItem; + try + { + aItem << aValue; + } + catch(const css::uno::Exception& ex) + { + throw css::lang::IllegalArgumentException(ex.Message, static_cast< css::container::XNameContainer* >(this), 2); + } + + impl_loadOnDemand(); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // create write copy of used cache on demand ... + impl_initFlushMode(); + + FilterCache* pCache = impl_getWorkingCache(); + if (!pCache->hasItem(m_eType, sItem)) + throw css::container::NoSuchElementException(::rtl::OUString(), static_cast< css::container::XNameContainer* >(this)); + pCache->setItem(m_eType, sItem, aItem); + + aLock.clear(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.03.2004 11:44 +-----------------------------------------------*/ +css::uno::Any SAL_CALL BaseContainer::getByName(const ::rtl::OUString& sItem) + throw (css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ) +{ + if (!sItem.getLength()) + throw css::container::NoSuchElementException( + ::rtl::OUString::createFromAscii("An empty item cant be part of this cache!"), + css::uno::Reference< css::uno::XInterface >(static_cast< css::container::XNameAccess* >(this), css::uno::UNO_QUERY)); + + css::uno::Any aValue; + + impl_loadOnDemand(); + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + CacheItem aItem; + try + { + FilterCache* pCache = impl_getWorkingCache(); + aItem = pCache->getItem(m_eType, sItem); + pCache->addStatePropsToItem(m_eType, sItem, aItem); // add implicit props "Finalized"/"Mandatory" + } + catch(const css::container::NoSuchElementException& exNotExist) + { + throw exNotExist; + } + catch(const css::uno::Exception&) + { + // TODO invalid cache!? How should it be handled right? + aItem.clear(); + } + + aValue <<= aItem.getAsPackedPropertyValueList(); + // <- SAFE + + return aValue; +} + +/*----------------------------------------------- + 03.03.2004 11:46 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > SAL_CALL BaseContainer::getElementNames() + throw (css::uno::RuntimeException) +{ + css::uno::Sequence< ::rtl::OUString > lNames; + + impl_loadOnDemand(); + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + try + { + FilterCache* pCache = impl_getWorkingCache(); + OUStringList lKeys = pCache->getItemNames(m_eType); + lKeys >> lNames; + } + catch(const css::uno::Exception&) + { + // invalid cache!? + lNames.realloc(0); + } + + // <- SAFE + + return lNames; +} + +/*----------------------------------------------- + 03.03.2004 11:47 +-----------------------------------------------*/ +sal_Bool SAL_CALL BaseContainer::hasByName(const ::rtl::OUString& sItem) + throw (css::uno::RuntimeException) +{ + sal_Bool bHasOne = sal_False; + + impl_loadOnDemand(); + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + try + { + FilterCache* pCache = impl_getWorkingCache(); + bHasOne = pCache->hasItem(m_eType, sItem); + } + catch(const css::uno::Exception&) + { + // invalid cache!? + bHasOne = sal_False; + } + + // <- SAFE + + return bHasOne; +} + +/*----------------------------------------------- + 02.07.2003 10:18 +-----------------------------------------------*/ +css::uno::Type SAL_CALL BaseContainer::getElementType() + throw (css::uno::RuntimeException) +{ + // no lock neccessary - because the type of our items + // is fix! no internal call or member needed ... + return ::getCppuType(static_cast< css::uno::Sequence< css::beans::PropertyValue >* >(NULL)); +} + +/*----------------------------------------------- + 03.03.2004 11:48 +-----------------------------------------------*/ +sal_Bool SAL_CALL BaseContainer::hasElements() + throw (css::uno::RuntimeException) +{ + sal_Bool bHasSome = sal_False; + + impl_loadOnDemand(); + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + try + { + FilterCache* pCache = impl_getWorkingCache(); + bHasSome = pCache->hasItems(m_eType); + } + catch(const css::uno::Exception&) + { + // invalid cache?! + bHasSome = sal_False; + } + + // <- SAFE + + return bHasSome; +} + +/*----------------------------------------------- + 15.07.2003 09:21 +-----------------------------------------------*/ +css::uno::Reference< css::container::XEnumeration > SAL_CALL BaseContainer::createSubSetEnumerationByQuery(const ::rtl::OUString& /* sQuery */ ) + throw (css::uno::RuntimeException) +{ + OSL_ENSURE(sal_False, "not pure virtual ... but not realy implemented .-)"); + + ::comphelper::OEnumerationByName* pEnum = new ::comphelper::OEnumerationByName(this, css::uno::Sequence< ::rtl::OUString >()); + return css::uno::Reference< css::container::XEnumeration >(static_cast< css::container::XEnumeration* >(pEnum), css::uno::UNO_QUERY); +} + +/*----------------------------------------------- + 15.07.2003 10:15 +-----------------------------------------------*/ +css::uno::Reference< css::container::XEnumeration > SAL_CALL BaseContainer::createSubSetEnumerationByProperties(const css::uno::Sequence< css::beans::NamedValue >& lProperties) + throw (css::uno::RuntimeException) +{ + css::uno::Reference< css::container::XEnumeration > xEnum; + OUStringList lKeys; + + impl_loadOnDemand(); + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + try + { + // convert the given properties first to our internal representation + CacheItem lProps; + lProps << lProperties; + + // search the key names of all items, where its properties match + // the given ones in its minimum + FilterCache* pCache = impl_getWorkingCache(); + lKeys = pCache->getMatchingItemsByProps(m_eType, lProps); + } + catch(const css::uno::Exception&) + { + // invalid cache, internal failure, wrong conversion ...!? + // doesnt matter + lKeys.clear(); + } + + // <- SAFE + + // create a specialized enumeration helper, which + // provides the collected informations outside. + // It hold a reference to us ... and call our container interface directly. + // be aware of some direct callbacks if it will be created :-) + + /* Note: Its not allowed to return NULL. Because an empty enumeration + transport the same information but make no trouble outside. + Further its easiear to work directly with the return value + instaed of checking of NULL returns! */ + + css::uno::Sequence< ::rtl::OUString > lSubSet; + lKeys >> lSubSet; + ::comphelper::OEnumerationByName* pEnum = new ::comphelper::OEnumerationByName(this, lSubSet); + return css::uno::Reference< css::container::XEnumeration >(static_cast< css::container::XEnumeration* >(pEnum), css::uno::UNO_QUERY); +} + +/*----------------------------------------------- + 07.03.2004 10:48 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::flush() + throw (css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + if (!m_pFlushCache) + throw css::lang::WrappedTargetRuntimeException( + ::rtl::OUString::createFromAscii("Cant guarantee cache consistency. Special flush container does not exists!"), + dynamic_cast< css::container::XNameAccess* >(this), + css::uno::Any()); + + try + { + m_pFlushCache->flush(); + // Take over all changes into the global cache and + // forget the clone. + /* TODO + -think about me + If the global cache gets this information via listener, + we should remove this method! + */ + m_rCache->takeOver(*m_pFlushCache); + } + catch(const css::uno::Exception& ex) + { + // Dont remove the clone. May be the outside + // user whish to repair it now and calls flush() + // later again ... + + throw css::lang::WrappedTargetRuntimeException( + ::rtl::OUString::createFromAscii("Flush rejected by internal container."), + dynamic_cast< css::container::XNameAccess* >(this), + css::uno::makeAny(ex)); + } + + delete m_pFlushCache; + m_pFlushCache = NULL; + + css::uno::Reference< css::util::XRefreshable > xRefreshBroadcaster = m_xRefreshBroadcaster; + + aLock.clear(); + // <- SAFE + + if (xRefreshBroadcaster.is()) + xRefreshBroadcaster->refresh(); + + // notify listener outside the lock! + // The used listener helper lives if we live + // and is threadsafe by itself. + // Further its not a good idea to hold the own lock + // if an outside object is called :-) + css::lang::EventObject aSource (static_cast< css::util::XFlushable* >(this)); + ::cppu::OInterfaceContainerHelper* pContainer = m_lListener.getContainer(::getCppuType(static_cast< css::uno::Reference< css::util::XFlushListener >* >(NULL))); + if (pContainer) + { + ::cppu::OInterfaceIteratorHelper pIterator(*pContainer); + while (pIterator.hasMoreElements()) + { + try + { + // ... this pointer can be interesting to find out, where will be called as listener + // Dont optimize it to a direct iterator cast :-) + css::util::XFlushListener* pListener = (css::util::XFlushListener*)pIterator.next(); + pListener->flushed(aSource); + } + catch(const css::uno::Exception&) + { + // ignore any "damaged" flush listener! + // May its remote reference is broken ... + pIterator.remove(); + } + } + } +} + +/*----------------------------------------------- + 02.07.2003 12:16 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::addFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener) + throw (css::uno::RuntimeException) +{ + // no locks neccessary + // used helper lives if we live and is threadsafe by itself ... + m_lListener.addInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XFlushListener >* >(NULL)), + xListener ); +} + +/*----------------------------------------------- + 02.07.2003 12:18 +-----------------------------------------------*/ +void SAL_CALL BaseContainer::removeFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener) + throw (css::uno::RuntimeException) +{ + // no locks neccessary + // used helper lives if we live and is threadsafe by itself ... + m_lListener.removeInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XFlushListener >* >(NULL)), + xListener ); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/basecontainer.hxx b/filter/source/config/cache/basecontainer.hxx new file mode 100644 index 000000000000..e3730ce662e4 --- /dev/null +++ b/filter/source/config/cache/basecontainer.hxx @@ -0,0 +1,323 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __FILTER_CONFIG_BASECONTAINER_HXX_ +#define __FILTER_CONFIG_BASECONTAINER_HXX_ + +//_______________________________________________ +// includes + +#include "filtercache.hxx" +#include <com/sun/star/uno/Exception.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/util/XRefreshable.hpp> +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/container/XNameContainer.hpp> +#include <com/sun/star/container/XContainerQuery.hpp> +#include <com/sun/star/util/XFlushable.hpp> +#include <cppuhelper/interfacecontainer.h> +#include <salhelper/singletonref.hxx> +#include <cppuhelper/implbase4.hxx> +#include <cppuhelper/weakref.hxx> +#include <rtl/ustring.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements the interface css::container::XNameContainer + on top of a FilterCache reference. + + @descr This class can be used as base for own service implementations, + which must provide read/write access to the filter configuration. + Parameters regulate read/write access, which sub set of informations + should be available etc. + + @attention The base class BaseLock must be the first of declared ones. + Otherwhise we cant be shure, that our own mutex member (which is + present by this base class!) was full initialized inside our own + ctor as first! + */ +class BaseContainer : public BaseLock + , public ::cppu::WeakImplHelper4< css::lang::XServiceInfo , + css::container::XNameContainer , // => XNameReplace => XNameAccess => XElementAccess + css::container::XContainerQuery , + css::util::XFlushable > +{ + //------------------------------------------- + // member + + protected: + + /** @short reference to an uno service manager, which can be used + to create own needed services. */ + css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR; + + // TODO + css::uno::WeakReference< css::util::XRefreshable > m_xRefreshBroadcaster; + + /** @short the implementation name of our derived class, which we provide + at the interface XServiceInfo of our class ... */ + ::rtl::OUString m_sImplementationName; + + /** @short the list of supported uno service names of our derived class, which we provide + at the interface XServiceInfo of our class ... */ + css::uno::Sequence< ::rtl::OUString > m_lServiceNames; + + /** @short reference(!) to a singleton filter cache implementation, + which is used to work with the underlying configuration. */ + ::salhelper::SingletonRef< FilterCache > m_rCache; + + /** @short local filter cache, which is used to collect changes on the + filter configuration first and flush it later. + + @descr Normaly this member isnt used nor initialized. Thats true, + if this container is used for reading only. The first write access + (e.g. by calling insertByName()) creates a copy of the current + global cache m_rCache to initialize the m_pFlushCache member. + + Afterwards only the flush cache copy is used. Inside flush() this + copy will be removed and m_rCache can be used again. + + m_pFlushCache and m_rCache must not be synchronized manually here. + m_rCache listen on the global configuration, where m_pFlushCache + write its data. m_rCache update itself automaticly. + */ + FilterCache* m_pFlushCache; + + /** @short specify, which sub container of the used filter cache + must be wrapped by this container interface. */ + FilterCache::EItemType m_eType; + + /** @short holds all listener, which are registered at this instance. */ + ::cppu::OMultiTypeInterfaceContainerHelper m_lListener; + + /** @short hold at least on filter cache instance alive and + prevent he office from unloading this cache if no filter + is currently used.*/ + static ::salhelper::SingletonRef< FilterCache >* m_pPerformanceOptimizer; + + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor. + + @descr Because mostly this class is used as base class for own service + implementations in combination with a ImplInheritanceHelper2 template ... + there is no way to provide some initializing data through the ctor :-( + This base class will be created inside its default ctor and must be + initialized with its needed parameters explicitly by calling: "init()". + + @see init() + */ + BaseContainer(); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~BaseContainer(); + + //--------------------------------------- + + /** @short initialize this generic intsnace with some specialized values + from our derived object. + + @descr Because an outside class must use ImplInheritanceHelper2 template to + use us a base class ... and there is no way to pass such initializing + parameters trough a required default ctor ... we must be initialized + by this special method. Of course this method must be called first before + any other interface method is used. + + @param xSMGR + reference to the uno service manager, which created this service instance. + + @param sImplementationName + the implementation name of our derived class, which we provide + at the interface XServiceInfo of our class ... + + @param lServiceNames + the list of supported uno service names of our derived class, which we provide + at the interface XServiceInfo of our class ... + + @param eType + specify, which sub container of the used filter cache + must be wrapped by this container interface. + */ + virtual void init(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR , + const ::rtl::OUString& sImplementationName, + const css::uno::Sequence< ::rtl::OUString >& lServiceNames , + FilterCache::EItemType eType ); + + //------------------------------------------- + // helper + + protected: + + //--------------------------------------- + + /** @short check if the underlying configuration data was already loaded + and do it if neccessary automaticly. + */ + void impl_loadOnDemand(); + + //--------------------------------------- + + /** @short it creates the global instance m_pFilterCache, which is a copy + of the global instance m_rCache, and will be used to change the + configuration. + + @descr If no exception occures, its guaranteed, that the member m_rFlushCache + was initialized right and can be used further. + */ + void impl_initFlushMode() + throw (css::uno::RuntimeException); + + //--------------------------------------- + + /** @short returns a pointer to the current used cache member. + + @descr Its a point to the FilterCache instance behind m_pFlushCache + or m_rCache. + + @note The lifetime of this pointer is restricted to the time, where + the mutex of this BaseContainer instance is locked. + Otherwhise may be the interface method flush() will destroy + m_pFlushCache and the here returned pointer will be invalid! + + Use: + + Guard aLock(m_aLock); + FilterCache* p = impl_getWorkingCache(); + p->doSomething(); + aLock.clear(); + // after this point p cant b e guaranteed any longer! + */ + FilterCache* impl_getWorkingCache() const; + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XServiceInfo + + virtual ::rtl::OUString SAL_CALL getImplementationName() + throw (css::uno::RuntimeException); + + virtual sal_Bool SAL_CALL supportsService(const ::rtl::OUString& sServiceName) + throw (css::uno::RuntimeException); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() + throw (css::uno::RuntimeException); + + //--------------------------------------- + // XNameContainer + + virtual void SAL_CALL insertByName(const ::rtl::OUString& sItem , + const css::uno::Any& aValue) + throw (css::lang::IllegalArgumentException , + css::container::ElementExistException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ); + + virtual void SAL_CALL removeByName(const ::rtl::OUString& sItem) + throw (css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ); + + //--------------------------------------- + // XNameReplace + + virtual void SAL_CALL replaceByName(const ::rtl::OUString& sItem , + const css::uno::Any& aValue) + throw (css::lang::IllegalArgumentException , + css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ); + + //--------------------------------------- + // XElementAccess + + virtual css::uno::Any SAL_CALL getByName(const ::rtl::OUString& sItem) + throw (css::container::NoSuchElementException, + css::lang::WrappedTargetException , + css::uno::RuntimeException ); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames() + throw (css::uno::RuntimeException); + + virtual sal_Bool SAL_CALL hasByName(const ::rtl::OUString& sItem) + throw (css::uno::RuntimeException); + + virtual css::uno::Type SAL_CALL getElementType() + throw (css::uno::RuntimeException); + + virtual sal_Bool SAL_CALL hasElements() + throw (css::uno::RuntimeException); + + //--------------------------------------- + // XContainerQuery + + // must be implemented realy by derived class ... + // We implement return of an empty result here only! + // But we show an assertion :-) + virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByQuery(const ::rtl::OUString& sQuery) + throw (css::uno::RuntimeException); + + virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByProperties(const css::uno::Sequence< css::beans::NamedValue >& lProperties) + throw (css::uno::RuntimeException); + + //--------------------------------------- + // XFlushable + + virtual void SAL_CALL flush() + throw (css::uno::RuntimeException); + + virtual void SAL_CALL addFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener) + throw (css::uno::RuntimeException); + + virtual void SAL_CALL removeFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener) + throw (css::uno::RuntimeException); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_BASECONTAINER_HXX_ diff --git a/filter/source/config/cache/cacheitem.cxx b/filter/source/config/cache/cacheitem.cxx new file mode 100644 index 000000000000..c752516df10f --- /dev/null +++ b/filter/source/config/cache/cacheitem.cxx @@ -0,0 +1,443 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "cacheitem.hxx" +#include "macros.hxx" +#include "constant.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/uno/Sequence.h> + +#ifndef _COM_SUN_STAR_BEANS_PROPERTYVALUE_Hpp_ +#include <com/sun/star/beans/PropertyValue.hpp> +#endif + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 04.11.2003 09:27 +-----------------------------------------------*/ +CacheItem::CacheItem() + : SequenceAsHashMap() +{ +} + +/*----------------------------------------------- + 26.06.2003 11:37 +-----------------------------------------------*/ +void CacheItem::update(const CacheItem& rUpdateItem) +{ + for(const_iterator pItUpdate = rUpdateItem.begin(); + pItUpdate != rUpdateItem.end() ; + ++pItUpdate ) + { + iterator pItThis = this->find(pItUpdate->first); + if (pItThis == this->end()) + (*this)[pItUpdate->first] = pItUpdate->second; // add new prop + else + pItThis->second = pItUpdate->second; // change value of existing prop + } +} + +/*----------------------------------------------- + 26.11.2003 13:27 +-----------------------------------------------*/ +void CacheItem::validateUINames(const ::rtl::OUString& sActLocale) +{ + if (!sActLocale.getLength()) + return; + + // 1) check UINames first + const_iterator pUINames = find(PROPNAME_UINAMES); + const_iterator pUIName = find(PROPNAME_UINAME ); + + ::comphelper::SequenceAsHashMap lUINames; + if (pUINames != end()) + lUINames << pUINames->second; + + ::rtl::OUString sUIName; + if (pUIName != end()) + pUIName->second >>= sUIName; + + if (sUIName.getLength()) + { + // 1a) set UIName inside list of UINames for current locale + lUINames[sActLocale] <<= sUIName; + } + else if (lUINames.size()>0) + { + // 1b) or get it from this list, if it not exist! + lUINames[sActLocale] >>= sUIName; + } + + (*this)[PROPNAME_UINAMES] <<= lUINames.getAsConstPropertyValueList(); + (*this)[PROPNAME_UINAME ] <<= sUIName; +} + +/*----------------------------------------------- + 12.01.2004 13:32 +-----------------------------------------------*/ +css::uno::Sequence< css::beans::PropertyValue > CacheItem::getAsPackedPropertyValueList() +{ + sal_Int32 c = (sal_Int32)size(); + sal_Int32 i = 0; + + css::uno::Sequence< css::beans::PropertyValue > lList(c); + css::beans::PropertyValue* pList = lList.getArray(); + + for (const_iterator pProp = begin(); + pProp != end() ; + ++pProp ) + { + const ::rtl::OUString& rName = pProp->first; + const css::uno::Any& rValue = pProp->second; + + if (!rValue.hasValue()) + continue; + + pList[i].Name = rName ; + pList[i].Value = rValue; + ++i; + } + lList.realloc(i); + + return lList; +} + +/*----------------------------------------------- + 17.07.2003 08:27 +-----------------------------------------------*/ +sal_Bool isSubSet(const css::uno::Any& aSubSet, + const css::uno::Any& aSet ) +{ + css::uno::Type aT1 = aSubSet.getValueType(); + css::uno::Type aT2 = aSet.getValueType(); + + if (!aT1.equals(aT2)) + { + _FILTER_CONFIG_LOG_("isSubSet() ... types of any values are different => return FALSE\n") + return sal_False; + } + + css::uno::TypeClass aTypeClass = aT1.getTypeClass(); + switch(aTypeClass) + { + //--------------------------------------- + case css::uno::TypeClass_BOOLEAN : + case css::uno::TypeClass_BYTE : + case css::uno::TypeClass_SHORT : + case css::uno::TypeClass_UNSIGNED_SHORT : + case css::uno::TypeClass_LONG : + case css::uno::TypeClass_UNSIGNED_LONG : + case css::uno::TypeClass_HYPER : + case css::uno::TypeClass_UNSIGNED_HYPER : + case css::uno::TypeClass_FLOAT : + case css::uno::TypeClass_DOUBLE : + { + sal_Bool bIs = (aSubSet == aSet); + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for atomic types => return %s\n", bIs ? "TRUE" : "FALSE") + return bIs; + } + + //--------------------------------------- + case css::uno::TypeClass_STRING : + { + ::rtl::OUString v1; + ::rtl::OUString v2; + + if ( + (aSubSet >>= v1) && + (aSet >>= v2) + ) + { + sal_Bool bIs = (v1.equals(v2)); + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for string types => return %s\n", bIs ? "TRUE" : "FALSE") + return bIs; + } + } + break; + + //--------------------------------------- + case css::uno::TypeClass_ANY : + { + css::uno::Any v1; + css::uno::Any v2; + + if ( + (aSubSet >>= v1) && + (aSet >>= v2) + ) + { + sal_Bool bIs = (isSubSet(v1, v2)); + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for packed any types => return %s\n", bIs ? "TRUE" : "FALSE") + return bIs; + } + } + break; + + //--------------------------------------- + case css::uno::TypeClass_STRUCT : + { + css::beans::PropertyValue p1; + css::beans::PropertyValue p2; + + if ( + (aSubSet >>= p1) && + (aSet >>= p2) + ) + { + sal_Bool bIs = ( + (p1.Name.equals(p2.Name) ) && + (isSubSet(p1.Value, p2.Value)) + ); + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for structured types [PropertyValue] => return %s\n", bIs ? "TRUE" : "FALSE") + return bIs; + } + + css::beans::NamedValue n1; + css::beans::NamedValue n2; + + if ( + (aSubSet >>= n1) && + (aSet >>= n2) + ) + { + sal_Bool bIs = ( + (n1.Name.equals(n2.Name) ) && + (isSubSet(n1.Value, n2.Value)) + ); + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for structured types [NamedValue] => return %s\n", bIs ? "TRUE" : "FALSE") + return bIs; + } + } + break; + + //--------------------------------------- + case css::uno::TypeClass_SEQUENCE : + { + css::uno::Sequence< ::rtl::OUString > uno_s1; + css::uno::Sequence< ::rtl::OUString > uno_s2; + + if ( + (aSubSet >>= uno_s1) && + (aSet >>= uno_s2) + ) + { + OUStringList stl_s1(uno_s1); + OUStringList stl_s2(uno_s2); + + for (OUStringList::const_iterator it1 = stl_s1.begin(); + it1 != stl_s1.end() ; + ++it1 ) + { + if (::std::find(stl_s2.begin(), stl_s2.end(), *it1) == stl_s2.end()) + { + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [OUString] ... dont found \"%s\" => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(*it1)) + return sal_False; + } + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [OUString] ... found \"%s\" => continue loop\n", _FILTER_CONFIG_TO_ASCII_(*it1)) + } + _FILTER_CONFIG_LOG_("isSubSet() ... check for list types [OUString] => return TRUE\n") + return sal_True; + } + + css::uno::Sequence< css::beans::PropertyValue > uno_p1; + css::uno::Sequence< css::beans::PropertyValue > uno_p2; + + if ( + (aSubSet >>= uno_p1) && + (aSet >>= uno_p2) + ) + { + ::comphelper::SequenceAsHashMap stl_p1(uno_p1); + ::comphelper::SequenceAsHashMap stl_p2(uno_p2); + + for (::comphelper::SequenceAsHashMap::const_iterator it1 = stl_p1.begin(); + it1 != stl_p1.end() ; + ++it1 ) + { + ::comphelper::SequenceAsHashMap::const_iterator it2 = stl_p2.find(it1->first); + if (it2 == stl_p2.end()) + { + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [PropertyValue] ... dont found \"%s\" => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + return sal_False; + } + if (!isSubSet(it1->second, it2->second)) + { + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [PropertyValue] ... found \"%s\" but has different value => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + return sal_False; + } + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [PropertyValue] ... found \"%s\" with right value => continue loop\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + } + _FILTER_CONFIG_LOG_("isSubSet() ... check for list types [PropertyValue] => return TRUE\n") + return sal_True; + } + + css::uno::Sequence< css::beans::NamedValue > uno_n1; + css::uno::Sequence< css::beans::NamedValue > uno_n2; + + if ( + (aSubSet >>= uno_n1) && + (aSet >>= uno_n2) + ) + { + ::comphelper::SequenceAsHashMap stl_n1(uno_n1); + ::comphelper::SequenceAsHashMap stl_n2(uno_n2); + + for (::comphelper::SequenceAsHashMap::const_iterator it1 = stl_n1.begin(); + it1 != stl_n1.end() ; + ++it1 ) + { + ::comphelper::SequenceAsHashMap::const_iterator it2 = stl_n2.find(it1->first); + if (it2 == stl_n2.end()) + { + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [NamedValue] ... dont found \"%s\" => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + return sal_False; + } + if (!isSubSet(it1->second, it2->second)) + { + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [NamedValue] ... found \"%s\" but has different value => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + return sal_False; + } + _FILTER_CONFIG_LOG_1_("isSubSet() ... check for list types [NamedValue] ... found \"%s\" with right value => continue loop\n", _FILTER_CONFIG_TO_ASCII_(it1->first)) + } + _FILTER_CONFIG_LOG_("isSubSet() ... check for list types [NamedValue] => return TRUE\n") + return sal_True; + } + } + break; +/* + case css::uno::TypeClass_CHAR : + case css::uno::TypeClass_VOID : + case css::uno::TypeClass_TYPE : + case css::uno::TypeClass_ENUM : + case css::uno::TypeClass_TYPEDEF : + case css::uno::TypeClass_UNION : + case css::uno::TypeClass_EXCEPTION : + case css::uno::TypeClass_ARRAY : + case css::uno::TypeClass_INTERFACE : + case css::uno::TypeClass_SERVICE : + case css::uno::TypeClass_MODULE : + case css::uno::TypeClass_INTERFACE_METHOD : + case css::uno::TypeClass_INTERFACE_ATTRIBUTE : + case css::uno::TypeClass_UNKNOWN : + case css::uno::TypeClass_PROPERTY : + case css::uno::TypeClass_CONSTANT : + case css::uno::TypeClass_CONSTANTS : + case css::uno::TypeClass_SINGLETON : +*/ + default: break; + } + + OSL_ENSURE(sal_False, "isSubSet() ... this point should not be reached!"); + return sal_False; +} + +/*----------------------------------------------- + 14.07.2003 10:24 +-----------------------------------------------*/ +sal_Bool CacheItem::haveProps(const CacheItem& lProps) const +{ + for (const_iterator pIt = lProps.begin(); + pIt != lProps.end() ; + ++pIt ) + { + // i) one required property does not exist at this item => return false + const_iterator pItThis = this->find(pIt->first); + if (pItThis == this->end()) + { + _FILTER_CONFIG_LOG_1_("CacheItem::haveProps() ... dont found \"%s\" => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(pIt->first)) + return sal_False; + } + + // ii) one item does not have the right value => return false + if (!isSubSet(pIt->second, pItThis->second)) + { + _FILTER_CONFIG_LOG_1_("CacheItem::haveProps() ... item \"%s\" has different value => return FALSE\n", _FILTER_CONFIG_TO_ASCII_(pIt->first)) + return sal_False; + } + } + + // this method was not breaked before => + // the given property set seems to match with our + // own properties in its minimum => return TRUE + _FILTER_CONFIG_LOG_("CacheItem::haveProps() ... => return TRUE\n") + return sal_True; +} + +/*----------------------------------------------- + 14.07.2003 10:43 +-----------------------------------------------*/ +sal_Bool CacheItem::dontHaveProps(const CacheItem& lProps) const +{ + for (const_iterator pIt = lProps.begin(); + pIt != lProps.end() ; + ++pIt ) + { + // i) one item does not exists in general + // => continue with next one, because + // "excluding" means ... "dont have it". + // And "not exists" match to "dont have it". + const_iterator pItThis = this->find(pIt->first); + if (pItThis == this->end()) + { + _FILTER_CONFIG_LOG_1_("CacheItem::dontHaveProps() ... not found \"%s\" => continue loop!\n", _FILTER_CONFIG_TO_ASCII_(pIt->first)) + continue; + } + + // ii) one item have the right value => return false + // because this item has the requested property ... + // But we checked for "dont have it" here. + if (isSubSet(pIt->second, pItThis->second)) + { + _FILTER_CONFIG_LOG_1_("CacheItem::dontHaveProps() ... item \"%s\" has same value => return FALSE!\n", _FILTER_CONFIG_TO_ASCII_(pIt->first)) + return sal_False; + } + } + + // this method was not breaked before => + // That means: this item has no matching property + // of the given set. It "dont have" it ... => return true. + _FILTER_CONFIG_LOG_("CacheItem::dontHaveProps() ... => return TRUE\n") + return sal_True; +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/cacheitem.hxx b/filter/source/config/cache/cacheitem.hxx new file mode 100644 index 000000000000..793a5f370cf9 --- /dev/null +++ b/filter/source/config/cache/cacheitem.hxx @@ -0,0 +1,261 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_CACHEITEM_HXX_ +#define __FILTER_CONFIG_CACHEITEM_HXX_ + +//_______________________________________________ +// includes + +#include <hash_map> +#include <deque> +#include <list> +#include <com/sun/star/uno/Any.h> +#include <com/sun/star/uno/Sequence.h> +#include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/beans/NamedValue.hpp> +#include <comphelper/sequenceasvector.hxx> +#include <comphelper/sequenceashashmap.hxx> +#include <osl/mutex.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/** @short Must be used as first derived base class + to get a full initialized mutex member, + which can be used during the ctor runs too! + */ +struct BaseLock +{ + public: + + // must be mutable to be useable in const environments too! + mutable ::osl::Mutex m_aLock; +}; + + +typedef ::comphelper::SequenceAsVector< ::rtl::OUString > OUStringList; + +//_______________________________________________ + +/** @short represent an item of a FilterCache + instance. + + @descr This class is not threadsafe tp perform + operations, which use many instances of + this class! Synchronizations must be done outside. + */ +class CacheItem : public ::comphelper::SequenceAsHashMap +{ + //------------------------------------------- + public: + + //--------------------------------------- + /** @short creates an empty item. + */ + CacheItem(); + + //--------------------------------------- + + /** @short update only properties, which are given by the + specified rItem. + + @descr Update means: - add new properties + - change existing values + + @param rUpdateItem + another cache item, which contains some special + properties, which should by used for updating + this one. + */ + void update(const CacheItem& rUpdateItem); + + //--------------------------------------- + + /** @short check, if the given properties exists + at this item. + + @descr All properties are compared in its minimum. + E.g: string lists => only the requested items + are checked. Additional existing items are ignored. + + @param lProps + contains all properties, which must exist at this item. + + @return TRUE if all given properties exists + at this item; FALSE otherwhise. + */ + sal_Bool haveProps(const CacheItem& lProps) const; + + //--------------------------------------- + + /** @short check, if the given properties dont exists + at this item. + + @descr All properties are compared in its minimum. + E.g: string lists => only the requested items + are checked. Additional existing items are ignored. + + @param lProps + contains all properties, which should not exists at this item. + + @return FALSE if at least on property exists at this item(!); + TRUE otherwhise. + */ + sal_Bool dontHaveProps(const CacheItem& lProps) const; + + //--------------------------------------- + + /** @short check, if the given properties dont exists + at this item. + + @descr All properties are compared in its minimum. + E.g: string lists => only the specified items + are checked. Additional existing items are ignored. + + @param lProps + contains all properties, which should be checked. + + @return TRUE if all given properties dont exists + at this item; FALSE otherwhise. + */ + sal_Bool excludeProps(const CacheItem& lProps) const; + + //--------------------------------------- + + /** @short because we know two UIName properties + (a list with all locales and the value + for the current locale only), we must be shure + that the correspond together. + + @param sActLocale + must specify the current office locale. + Its needed to adress the UIName property inside + the list of possible ones. + */ + void validateUINames(const ::rtl::OUString& sActLocale); + + //--------------------------------------- + + /** @short convert this structure to a seq< PropertyValue > + and ignore all empty properties! + + @descr Normaly the converter routines of the base class + SequenceAsHashMap do this job already. + But it doesnt provide a "pack" mechanism to + ignore properties with empty (means "void") values. + + @return css::uno::Sequence< css::beans::PropertyValue > + as a list of all properties of this cacheitem, + where empty properties was removed. + */ + css::uno::Sequence< css::beans::PropertyValue > getAsPackedPropertyValueList(); +}; + +//_______________________________________________ + +/** @short represent an item list of a FilterCache + instance. + */ +typedef ::std::hash_map< ::rtl::OUString , + CacheItem , + ::rtl::OUStringHash , + ::std::equal_to< ::rtl::OUString > > CacheItemList; + +//_______________________________________________ + +/** @short supports registration of multiple key to + another string information. + + @descr E.g. a list of internal type names can be registered + to an extension. Organization as an hash makes it + faster then searching inside vectors. + + On the other side e.g. URLPattern cant be realy adressed + by a hash value ... because the use wildcards. But + there we need key-value pairs too, which cant be provided + by a pur vector! + */ +typedef ::std::hash_map< ::rtl::OUString , + OUStringList , + ::rtl::OUStringHash , + ::std::equal_to< ::rtl::OUString > > CacheItemRegistration; + +//_______________________________________________ + +/** @short is used to collect all matching types of an URL + during type detection. + + @descr Every type in this list is combined with an information, + which property matched to the given URL. The user of this + structure can decide then, if a deep detection should be + supressed e.g. if an URLPattern was used. + */ +struct FlatDetectionInfo +{ + // the internal type name + ::rtl::OUString sType; + + // this type was found by a matching the URL extension + sal_Bool bMatchByExtension; + + // this type was found by a matching URL Pattern + sal_Bool bMatchByPattern; + + // the user selected this type explicitly + sal_Bool bPreselectedAsType; + + // the user selected this type implicit by selecting a corresponding filter + sal_Bool bPreselectedByFilter; + + // the user selected this type implicit by selecting a corresponding office module + sal_Bool bPreselectedByDocumentService; + + FlatDetectionInfo() + : sType (::rtl::OUString()) + , bMatchByExtension (sal_False ) + , bMatchByPattern (sal_False ) + , bPreselectedAsType (sal_False ) + , bPreselectedByFilter (sal_False ) + , bPreselectedByDocumentService(sal_False ) + {} +}; + +typedef ::std::list< FlatDetectionInfo > FlatDetection; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_CACHEITEM_HXX_ diff --git a/filter/source/config/cache/cacheupdatelistener.cxx b/filter/source/config/cache/cacheupdatelistener.cxx new file mode 100644 index 000000000000..90bd89c9d864 --- /dev/null +++ b/filter/source/config/cache/cacheupdatelistener.cxx @@ -0,0 +1,246 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "cacheupdatelistener.hxx" +#include "constant.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/util/XChangesNotifier.hpp> +#include <com/sun/star/util/XRefreshable.hpp> +#include <salhelper/singletonref.hxx> +#include <unotools/configpathes.hxx> +#include <rtl/ustring.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 05.03.2004 08:36 +-----------------------------------------------*/ +CacheUpdateListener::CacheUpdateListener(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR , + const css::uno::Reference< css::uno::XInterface >& xConfigAccess, + FilterCache::EItemType eConfigType ) + : BaseLock ( ) + , m_xSMGR (xSMGR ) + , m_rCache ( ) + , m_xConfig (xConfigAccess) + , m_eConfigType(eConfigType ) +{ +} + +/*----------------------------------------------- + 05.03.2004 08:37 +-----------------------------------------------*/ +CacheUpdateListener::~CacheUpdateListener() +{ +} + +/*----------------------------------------------- + 07.03.2004 07:59 +-----------------------------------------------*/ +void CacheUpdateListener::startListening() +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + css::uno::Reference< css::util::XChangesNotifier > xNotifier(m_xConfig, css::uno::UNO_QUERY); + aLock.clear(); + // <- SAFE + + if (!xNotifier.is()) + return; + + css::uno::Reference< css::util::XChangesListener > xThis(static_cast< css::util::XChangesListener* >(this), css::uno::UNO_QUERY_THROW); + xNotifier->addChangesListener(xThis); + +/* + css::uno::Reference< css::container::XContainer > xNotifier(xConfigAccess, css::uno::UNO_QUERY); + if (!xNotifier.is()) + return; + + css::uno::Reference< css::container::XContainerListener > xThis(static_cast< css::container::XContainerListener* >(this), css::uno::UNO_QUERY); + xNotifier->addContainerListener(xThis); +*/ +} + +/*----------------------------------------------- + 07.03.2004 07:59 +-----------------------------------------------*/ +void CacheUpdateListener::stopListening() +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + css::uno::Reference< css::util::XChangesNotifier > xNotifier(m_xConfig, css::uno::UNO_QUERY); + aLock.clear(); + // <- SAFE + + if (!xNotifier.is()) + return; + + css::uno::Reference< css::util::XChangesListener > xThis(static_cast< css::util::XChangesListener* >(this), css::uno::UNO_QUERY); + xNotifier->removeChangesListener(xThis); + +/* + css::uno::Reference< css::container::XContainer > xNotifier(xConfigAccess, css::uno::UNO_QUERY); + if (!xNotifier.is()) + return; + + css::uno::Reference< css::container::XContainerListener > xThis(static_cast< css::container::XContainerListener* >(this), css::uno::UNO_QUERY); + xNotifier->removeContainerListener(xThis); +*/ +} + +/*----------------------------------------------- + 07.03.2004 08:17 +-----------------------------------------------*/ +void SAL_CALL CacheUpdateListener::changesOccurred(const css::util::ChangesEvent& aEvent) + throw(css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // disposed ? + if ( ! m_xConfig.is()) + return; + + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR; + FilterCache::EItemType eType = m_eConfigType; + + aLock.clear(); + // <- SAFE + + OUStringList lChangedItems; + sal_Int32 c = aEvent.Changes.getLength(); + sal_Int32 i = 0; + + for (i=0; i<c; ++i) + { + const css::util::ElementChange& aChange = aEvent.Changes[i]; + + ::rtl::OUString sOrgPath ; + ::rtl::OUString sTempPath; + + ::rtl::OUString sProperty; + ::rtl::OUString sNode ; + ::rtl::OUString sLocale ; + + /* at least we must be able to retrieve 2 path elements + But sometimes the original path can contain 3 of them ... in case + a localized value was changed. + => + 1) Filters/Filter["filtername"]/Property + 2) Filters/Filter["filtername"]/LocalizedProperty/Locale + */ + + aChange.Accessor >>= sOrgPath; + if ( ! ::utl::splitLastFromConfigurationPath(sOrgPath, sTempPath, sLocale)) + continue; + sOrgPath = sTempPath; + if ( ! ::utl::splitLastFromConfigurationPath(sOrgPath, sTempPath, sProperty)) + { + sNode = sLocale; + sProperty = ::rtl::OUString(); + sLocale = ::rtl::OUString(); + } + else + { + sOrgPath = sTempPath; + if ( ! ::utl::splitLastFromConfigurationPath(sOrgPath, sTempPath, sNode)) + { + sNode = sProperty; + sProperty = sLocale; + sLocale = ::rtl::OUString(); + } + } + + if ( ! sNode.getLength() ) + continue; + + OUStringList::const_iterator pIt = ::std::find(lChangedItems.begin(), lChangedItems.end(), sNode); + if (pIt == lChangedItems.end()) + lChangedItems.push_back(sNode); + } + + sal_Bool bNotifyRefresh = sal_False; + OUStringList::const_iterator pIt; + for ( pIt = lChangedItems.begin(); + pIt != lChangedItems.end() ; + ++pIt ) + { + const ::rtl::OUString& sItem = *pIt; + try + { + m_rCache->refreshItem(eType, sItem); + } + catch(const css::container::NoSuchElementException&) + { + // can be ignored! Because we must be aware that + // sItem was removed from the condfiguration and we forced an update of the cache. + // But we know, that the cache is up-to-date know and has thrown this exception afterwards .-) + } + // NO FLUSH! Otherwhise we start a never ending story here .-) + bNotifyRefresh = sal_True; + } + + // notify sfx cache about the changed filter cache .-) + if (bNotifyRefresh) + { + css::uno::Reference< css::util::XRefreshable > xRefreshBroadcaster( + xSMGR->createInstance(SERVICE_FILTERCONFIGREFRESH), + css::uno::UNO_QUERY); + if (xRefreshBroadcaster.is()) + xRefreshBroadcaster->refresh(); + } +} + +/*----------------------------------------------- + 05.03.2004 08:44 +-----------------------------------------------*/ +void SAL_CALL CacheUpdateListener::disposing(const css::lang::EventObject& aEvent) + throw(css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + if (aEvent.Source == m_xConfig) + m_xConfig.clear(); + aLock.clear(); + // <- SAFE +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/cacheupdatelistener.hxx b/filter/source/config/cache/cacheupdatelistener.hxx new file mode 100644 index 000000000000..8e75e4304bf2 --- /dev/null +++ b/filter/source/config/cache/cacheupdatelistener.hxx @@ -0,0 +1,147 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __FILTER_CONFIG_CACHEUPDATELISTENER_HXX_ +#define __FILTER_CONFIG_CACHEUPDATELISTENER_HXX_ + +//_______________________________________________ +// includes + +#include "filtercache.hxx" +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XEventListener.hpp> +#include <com/sun/star/util/XChangesListener.hpp> +#include <salhelper/singletonref.hxx> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements a listener, which will update the + global filter cache, if the underlying configuration + wa changed by other processes. + */ +class CacheUpdateListener : public BaseLock // must be the first one to guarantee right initialized mutex member! + , public ::cppu::WeakImplHelper1< css::util::XChangesListener > +{ + //------------------------------------------- + // member + + private: + + /** @short reference to an uno service manager, which can be used + to create own needed services. */ + css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR; + + /** @short reference to the singleton(!) filter cache implementation, + which should be updated by this thread. */ + ::salhelper::SingletonRef< FilterCache > m_rCache; + + /** @short holds the configuration access, where we listen alive. */ + css::uno::Reference< css::uno::XInterface > m_xConfig; + + /** @short every instance of this update listener listen on + a special sub set of the filter configuration. + So it should know, which type of configuration entry + it must put into the filter cache, if the configuration notifys changes ... */ + FilterCache::EItemType m_eConfigType; + + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short initialize new instance of this class. + + @descr Listening wont be started here. It can be done + by calling startListening() on this instance. + + @see startListening() + + @param xSMGR + reference to a service manager, which can be used to create + own needed uno services. + + @param xConfigAccess + the configuration access, where this instance should listen for changes. + + @param eConfigType + specify the type of configuration. + */ + CacheUpdateListener(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR , + const css::uno::Reference< css::uno::XInterface >& xConfigAccess, + FilterCache::EItemType eConfigType ); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~CacheUpdateListener(); + + //--------------------------------------- + + /** @short starts listening. + */ + virtual void startListening(); + + //--------------------------------------- + + /** @short stop listening. + */ + virtual void stopListening(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XChangesListener + + virtual void SAL_CALL changesOccurred(const css::util::ChangesEvent& aEvent) + throw(css::uno::RuntimeException); + + //--------------------------------------- + // lang.XEventListener + virtual void SAL_CALL disposing(const css::lang::EventObject& aEvent) + throw(css::uno::RuntimeException); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_CACHEUPDATELISTENER_HXX_ diff --git a/filter/source/config/cache/configflush.cxx b/filter/source/config/cache/configflush.cxx new file mode 100644 index 000000000000..e97df2a7f40d --- /dev/null +++ b/filter/source/config/cache/configflush.cxx @@ -0,0 +1,168 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "configflush.hxx" +#include "constant.hxx" + +//_______________________________________________ +// includes +#include <osl/diagnose.h> + +//_______________________________________________ +// namespace + +namespace css = ::com::sun::star; + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//----------------------------------------------- +ConfigFlush::ConfigFlush(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) + : BaseLock ( ) + , m_xSMGR (xSMGR ) + , m_lListener(m_aLock) +{ +} + +//----------------------------------------------- +ConfigFlush::~ConfigFlush() +{ +} + +//----------------------------------------------- +::rtl::OUString SAL_CALL ConfigFlush::getImplementationName() + throw (css::uno::RuntimeException) +{ + return impl_getImplementationName(); + // <- SAFE +} + +//----------------------------------------------- +sal_Bool SAL_CALL ConfigFlush::supportsService(const ::rtl::OUString& sServiceName) + throw (css::uno::RuntimeException) +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames = impl_getSupportedServiceNames(); + sal_Int32 c = lServiceNames.getLength(); + const ::rtl::OUString* pNames = lServiceNames.getConstArray(); + for (sal_Int32 i=0; i<c; ++i) + { + if (pNames[i].equals(sServiceName)) + return sal_True; + } + return sal_False; +} + +//----------------------------------------------- +css::uno::Sequence< ::rtl::OUString > SAL_CALL ConfigFlush::getSupportedServiceNames() + throw (css::uno::RuntimeException) +{ + return impl_getSupportedServiceNames(); +} + +//----------------------------------------------- +void SAL_CALL ConfigFlush::refresh() + throw(css::uno::RuntimeException) +{ + // notify listener outside the lock! + // The used listener helper lives if we live + // and is threadsafe by itself. + // Further its not a good idea to hold the own lock + // if an outside object is called :-) + css::lang::EventObject aSource (static_cast< css::util::XRefreshable* >(this)); + ::cppu::OInterfaceContainerHelper* pContainer = m_lListener.getContainer(::getCppuType(static_cast< css::uno::Reference< css::util::XRefreshListener >* >(NULL))); + if (pContainer) + { + ::cppu::OInterfaceIteratorHelper pIterator(*pContainer); + while (pIterator.hasMoreElements()) + { + try + { + // ... this pointer can be interesting to find out, where will be called as listener + // Dont optimize it to a direct iterator cast :-) + css::util::XRefreshListener* pListener = (css::util::XRefreshListener*)pIterator.next(); + pListener->refreshed(aSource); + } + catch(const css::uno::Exception&) + { + // ignore any "damaged" flush listener! + // May its remote reference is broken ... + pIterator.remove(); + } + } + } +} + +//----------------------------------------------- +void SAL_CALL ConfigFlush::addRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener) + throw(css::uno::RuntimeException) +{ + // no locks neccessary + // used helper lives if we live and is threadsafe by itself ... + m_lListener.addInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XRefreshListener >* >(NULL)), + xListener); +} + +//----------------------------------------------- +void SAL_CALL ConfigFlush::removeRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener) + throw(css::uno::RuntimeException) +{ + // no locks neccessary + // used helper lives if we live and is threadsafe by itself ... + m_lListener.removeInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XRefreshListener >* >(NULL)), + xListener); +} + +//----------------------------------------------- +::rtl::OUString ConfigFlush::impl_getImplementationName() +{ + static ::rtl::OUString IMPLNAME = ::rtl::OUString::createFromAscii("com.sun.star.comp.filter.config.ConfigFlush"); + return IMPLNAME; +} + +//----------------------------------------------- +css::uno::Sequence< ::rtl::OUString > ConfigFlush::impl_getSupportedServiceNames() +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames(1); + lServiceNames[0] = SERVICE_FILTERCONFIGREFRESH; + return lServiceNames; +} + +//----------------------------------------------- +css::uno::Reference< css::uno::XInterface > ConfigFlush::impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + ConfigFlush* pNew = new ConfigFlush(xSMGR); + return css::uno::Reference< css::uno::XInterface >(static_cast< css::util::XRefreshable* >(pNew), css::uno::UNO_QUERY); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/configflush.hxx b/filter/source/config/cache/configflush.hxx new file mode 100644 index 000000000000..477d7017ca35 --- /dev/null +++ b/filter/source/config/cache/configflush.hxx @@ -0,0 +1,128 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __FILTER_CONFIG_CONFIGFLUSH_HXX_ +#define __FILTER_CONFIG_CONFIGFLUSH_HXX_ + +//_______________________________________________ +// includes + +#include "cacheitem.hxx" +#include <com/sun/star/util/XRefreshable.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <cppuhelper/interfacecontainer.h> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short supports registration of XRefreshListener + on the global filter configuration. + + @descr Such refresh listener will be called in case the + type/filter configuration will be changed at runtime. + */ +class ConfigFlush : public BaseLock + , public ::cppu::WeakImplHelper1< css::util::XRefreshable > +{ + //------------------------------------------- + // member + + protected: + + /** @short reference to an uno service manager, which can be used + to create own needed services. */ + css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR; + + /** @short holds all listener, which are registered at this instance. */ + ::cppu::OMultiTypeInterfaceContainerHelper m_lListener; + + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor. + */ + ConfigFlush(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~ConfigFlush(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XServiceInfo + + virtual ::rtl::OUString SAL_CALL getImplementationName() + throw (css::uno::RuntimeException); + + virtual sal_Bool SAL_CALL supportsService(const ::rtl::OUString& sServiceName) + throw (css::uno::RuntimeException); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() + throw (css::uno::RuntimeException); + + //--------------------------------------- + // XRefreshable + + virtual void SAL_CALL refresh() + throw(css::uno::RuntimeException); + + virtual void SAL_CALL addRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener) + throw(css::uno::RuntimeException); + + virtual void SAL_CALL removeRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener) + throw(css::uno::RuntimeException); + + //--------------------------------------- + // interface to register/create this instance as an UNO service + static ::rtl::OUString impl_getImplementationName(); + static css::uno::Sequence< ::rtl::OUString > impl_getSupportedServiceNames(); + static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_CONFIGFLUSH_HXX_ diff --git a/filter/source/config/cache/constant.hxx b/filter/source/config/cache/constant.hxx new file mode 100644 index 000000000000..244a78864228 --- /dev/null +++ b/filter/source/config/cache/constant.hxx @@ -0,0 +1,217 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef _FILTER_CONFIG_CONSTANT_HXX_ +#define _FILTER_CONFIG_CONSTANT_HXX_ + +#include "macros.hxx" + +namespace filter { namespace config { +extern rtl::OUString pFilterStrings[]; +} } +#ifndef PROPNAME_IMPL_DECL +# define PROPNAME_DECL(index, str) (pFilterStrings[(index)]) +#else +# define PROPNAME_DECL(index, str) pFilterStrings[(index)] = _FILTER_CONFIG_FROM_ASCII_(str) +#endif + +/* disable impl_loadOnDemand function of BaseContainer for certain + functions, where it the feature "impl_loadItemOnDemand() of class FilterCache + can be used instead of loadAll()!*/ +// #define LOAD_IMPLICIT + +//_______________________________________________ + +/** @short used to identify a some generic item properties against the + configuration API and can be used at all name containers + (based on this filtercache) too. + */ +#define PROPNAME_NAME PROPNAME_DECL(0, "Name") + +/** @short used to identify a type item property against the + configuration API and can be used at all name containers + (based on this filtercache) too. + */ +#define PROPNAME_UINAME PROPNAME_DECL(1, "UIName" ) +#define PROPNAME_UINAMES PROPNAME_DECL(2, "UINames" ) +#define PROPNAME_PREFERRED PROPNAME_DECL(3, "Preferred" ) +#define PROPNAME_PREFERREDFILTER PROPNAME_DECL(4, "PreferredFilter" ) +#define PROPNAME_DETECTSERVICE PROPNAME_DECL(5, "DetectService" ) +#define PROPNAME_MEDIATYPE PROPNAME_DECL(6, "MediaType" ) +#define PROPNAME_CLIPBOARDFORMAT PROPNAME_DECL(7, "ClipboardFormat" ) +#define PROPNAME_URLPATTERN PROPNAME_DECL(8, "URLPattern" ) +#define PROPNAME_EXTENSIONS PROPNAME_DECL(9, "Extensions" ) + +/** @short used to identify a filter item property against the + configuration API and can be used at all name containers + (based on this filtercache) too. + */ +#define PROPNAME_TYPE PROPNAME_DECL(10, "Type" ) +#define PROPNAME_DOCUMENTSERVICE PROPNAME_DECL(11, "DocumentService" ) +#define PROPNAME_FILTERSERVICE PROPNAME_DECL(12, "FilterService" ) +#define PROPNAME_UICOMPONENT PROPNAME_DECL(13, "UIComponent" ) +#define PROPNAME_FLAGS PROPNAME_DECL(14, "Flags" ) +#define PROPNAME_USERDATA PROPNAME_DECL(15, "UserData" ) +#define PROPNAME_TEMPLATENAME PROPNAME_DECL(16, "TemplateName" ) +#define PROPNAME_FILEFORMATVERSION PROPNAME_DECL(17, "FileFormatVersion") + +/** @short used to identify a frame loader or detect service item + property against the configuration API and can be used + at all name containers (based on this filtercache) too. + */ +#define PROPNAME_TYPES PROPNAME_DECL(18, "Types") + +/** @short used to identify the list of sorted filters for a specific + office module + */ +#define PROPNAME_SORTEDFILTERLIST _FILTER_CONFIG_FROM_ASCII_("SortedFilterList") + +/** @short implicit properties. which are used at the container interface only. + */ +#define PROPNAME_FINALIZED _FILTER_CONFIG_FROM_ASCII_("Finalized") +#define PROPNAME_MANDATORY _FILTER_CONFIG_FROM_ASCII_("Mandatory") + +/** @short used to identify a set of items against the configuration API. */ +#define CFGSET_TYPES _FILTER_CONFIG_FROM_ASCII_("Types" ) +#define CFGSET_FILTERS _FILTER_CONFIG_FROM_ASCII_("Filters" ) +#define CFGSET_FRAMELOADERS _FILTER_CONFIG_FROM_ASCII_("FrameLoaders" ) +#define CFGSET_CONTENTHANDLERS _FILTER_CONFIG_FROM_ASCII_("ContentHandlers") + +/** @short used to adress some configuration keys directly. + + @descr Such direct keys should be used with function + FilterCache::impl_getDirectCFGValue() only! + + @TODO define these direct keys ... + */ +#define CFGDIRECTKEY_OFFICELOCALE _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/L10N/ooLocale" ) +#define CFGDIRECTKEY_DEFAULTFRAMELOADER _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Misc/Defaults/DefaultFrameLoader") +#define CFGDIRECTKEY_OFFICELOCALE _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/L10N/ooLocale" ) +#define CFGDIRECTKEY_FORMATNAME _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/Product/ooXMLFileFormatName" ) +#define CFGDIRECTKEY_FORMATVERSION _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/Product/ooXMLFileFormatVersion" ) +#define CFGDIRECTKEY_PRODUCTNAME _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/Product/ooName" ) + +/** @short names of filter flags, sorted in alphabetical order */ +#define FLAGNAME_3RDPARTYFILTER _FILTER_CONFIG_FROM_ASCII_("3RDPARTYFILTER" ) +#define FLAGNAME_ALIEN _FILTER_CONFIG_FROM_ASCII_("ALIEN" ) +#define FLAGNAME_ASYNCHRON _FILTER_CONFIG_FROM_ASCII_("ASYNCHRON" ) +#define FLAGNAME_BROWSERPREFERRED _FILTER_CONFIG_FROM_ASCII_("BROWSERPREFERRED" ) +#define FLAGNAME_CONSULTSERVICE _FILTER_CONFIG_FROM_ASCII_("CONSULTSERVICE" ) +#define FLAGNAME_DEFAULT _FILTER_CONFIG_FROM_ASCII_("DEFAULT" ) +#define FLAGNAME_ENCRYPTION _FILTER_CONFIG_FROM_ASCII_("ENCRYPTION" ) +#define FLAGNAME_EXPORT _FILTER_CONFIG_FROM_ASCII_("EXPORT" ) +#define FLAGNAME_IMPORT _FILTER_CONFIG_FROM_ASCII_("IMPORT" ) +#define FLAGNAME_INTERNAL _FILTER_CONFIG_FROM_ASCII_("INTERNAL" ) +#define FLAGNAME_NOTINCHOOSER _FILTER_CONFIG_FROM_ASCII_("NOTINCHOOSER" ) +#define FLAGNAME_NOTINFILEDIALOG _FILTER_CONFIG_FROM_ASCII_("NOTINFILEDIALOG" ) +#define FLAGNAME_NOTINSTALLED _FILTER_CONFIG_FROM_ASCII_("NOTINSTALLED" ) +#define FLAGNAME_OWN _FILTER_CONFIG_FROM_ASCII_("OWN" ) +#define FLAGNAME_PACKED _FILTER_CONFIG_FROM_ASCII_("PACKED" ) +#define FLAGNAME_PASSWORDTOMODIFY _FILTER_CONFIG_FROM_ASCII_("PASSWORDTOMODIFY" ) +#define FLAGNAME_PREFERRED _FILTER_CONFIG_FROM_ASCII_("PREFERRED" ) +#define FLAGNAME_READONLY _FILTER_CONFIG_FROM_ASCII_("READONLY" ) +#define FLAGNAME_SILENTEXPORT _FILTER_CONFIG_FROM_ASCII_("SILENTEXPORT" ) +#define FLAGNAME_SUPPORTSSELECTION _FILTER_CONFIG_FROM_ASCII_("SUPPORTSSELECTION") +#define FLAGNAME_TEMPLATE _FILTER_CONFIG_FROM_ASCII_("TEMPLATE" ) +#define FLAGNAME_TEMPLATEPATH _FILTER_CONFIG_FROM_ASCII_("TEMPLATEPATH" ) +#define FLAGNAME_USESOPTIONS _FILTER_CONFIG_FROM_ASCII_("USESOPTIONS" ) +#define FLAGNAME_COMBINED _FILTER_CONFIG_FROM_ASCII_("COMBINED" ) + +/** @short values of filter flags, sorted based on value */ +#define FLAGVAL_IMPORT 0x00000001 // 1 +#define FLAGVAL_EXPORT 0x00000002 // 2 +#define FLAGVAL_TEMPLATE 0x00000004 // 4 +#define FLAGVAL_INTERNAL 0x00000008 // 8 +#define FLAGVAL_TEMPLATEPATH 0x00000010 // 16 +#define FLAGVAL_OWN 0x00000020 // 32 +#define FLAGVAL_ALIEN 0x00000040 // 64 +#define FLAGVAL_USESOPTIONS 0x00000080 // 128 +#define FLAGVAL_DEFAULT 0x00000100 // 256 +#define FLAGVAL_SUPPORTSSELECTION 0x00000400 // 1024 +#define FLAGVAL_NOTINFILEDIALOG 0x00001000 // 4096 +#define FLAGVAL_NOTINCHOOSER 0x00002000 // 8192 +#define FLAGVAL_ASYNCHRON 0x00004000 // 16384 +#define FLAGVAL_READONLY 0x00010000 // 65536 +#define FLAGVAL_NOTINSTALLED 0x00020000 // 131072 +#define FLAGVAL_CONSULTSERVICE 0x00040000 // 262144 +#define FLAGVAL_3RDPARTYFILTER 0x00080000 // 524288 +#define FLAGVAL_PACKED 0x00100000 // 1048576 +#define FLAGVAL_SILENTEXPORT 0x00200000 // 2097152 +#define FLAGVAL_BROWSERPREFERRED 0x00400000 // 4194304 +#define FLAGVAL_COMBINED 0x00800000 // 8388608 +#define FLAGVAL_ENCRYPTION 0x01000000 // 16777216 +#define FLAGVAL_PASSWORDTOMODIFY 0x02000000 // 33554432 +#define FLAGVAL_PREFERRED 0x10000000 // 268435456 +#define FLAGVAL_ALL 0xffffffff // 4294967295 + +/** @short uno service names of our document services + provided by our application modules. + */ +#define DOCUMENTSERVICE_WRITER _FILTER_CONFIG_FROM_ASCII_("com.sun.star.text.TextDocument" ) +#define DOCUMENTSERVICE_WRITER_WEB _FILTER_CONFIG_FROM_ASCII_("com.sun.star.text.WebDocument" ) +#define DOCUMENTSERVICE_WRITER_GLOBAL _FILTER_CONFIG_FROM_ASCII_("com.sun.star.text.GlobalDocument" ) +#define DOCUMENTSERVICE_CALC _FILTER_CONFIG_FROM_ASCII_("com.sun.star.sheet.SpreadsheetDocument" ) +#define DOCUMENTSERVICE_DRAW _FILTER_CONFIG_FROM_ASCII_("com.sun.star.drawing.DrawingDocument" ) +#define DOCUMENTSERVICE_IMPRESS _FILTER_CONFIG_FROM_ASCII_("com.sun.star.presentation.PresentationDocument") +#define DOCUMENTSERVICE_CHART _FILTER_CONFIG_FROM_ASCII_("com.sun.star.chart2.ChartDocument" ) +#define DOCUMENTSERVICE_MATH _FILTER_CONFIG_FROM_ASCII_("com.sun.star.formula.FormulaProperties" ) + +/** @short some uno service names. + */ +#define SERVICE_CONFIGURATIONPROVIDER _FILTER_CONFIG_FROM_ASCII_("com.sun.star.configuration.ConfigurationProvider" ) +#define SERVICE_CONFIGURATIONUPDATEACCESS _FILTER_CONFIG_FROM_ASCII_("com.sun.star.configuration.ConfigurationUpdateAccess" ) +#define SERVICE_CONFIGURATIONACCESS _FILTER_CONFIG_FROM_ASCII_("com.sun.star.configuration.ConfigurationAccess" ) +#define SERVICE_URLTRANSFORMER _FILTER_CONFIG_FROM_ASCII_("com.sun.star.util.URLTransformer" ) +#define SERVICE_FILTERCONFIGREFRESH _FILTER_CONFIG_FROM_ASCII_("com.sun.star.document.FilterConfigRefresh" ) + +/** @short some configuration pathes. + */ +#define CFGPACKAGE_TD_TYPES _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Types" ) +#define CFGPACKAGE_TD_FILTERS _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Filter") +#define CFGPACKAGE_TD_OTHERS _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Misc" ) +#define CFGPACKAGE_TD_UISORT _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.UISort/ModuleDependendFilterOrder") +#define CFGPACKAGE_TD_OLD _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Office.TypeDetection") +#define CFGPACKAGE_OOO_MODULES _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.Setup/Office/Factories") + +/** @short some default values. + */ +#define DEFAULT_OFFICELOCALE _FILTER_CONFIG_FROM_ASCII_("en-US") +#define DEFAULT_FORMATNAME _FILTER_CONFIG_FROM_ASCII_("OpenOffice") +#define DEFAULT_FORMATVERSION _FILTER_CONFIG_FROM_ASCII_("1.0") + +/** @short used for the queries of the FilterFactory service. + */ +#define QUERY_IDENTIFIER_MATCHBYDOCUMENTSERVICE _FILTER_CONFIG_FROM_ASCII_("matchByDocumentService" ) +#define QUERY_IDENTIFIER_GETPREFERREDFILTERFORTYPE _FILTER_CONFIG_FROM_ASCII_("getDefaultFilterForType") +#define QUERY_IDENTIFIER_GET_SORTED_FILTERLIST _FILTER_CONFIG_FROM_ASCII_("getSortedFilterList()" ) + +#define QUERY_PARAM_IFLAGS _FILTER_CONFIG_FROM_ASCII_("iflags") +#define QUERY_PARAM_EFLAGS _FILTER_CONFIG_FROM_ASCII_("eflags") +#define QUERY_PARAM_MODULE _FILTER_CONFIG_FROM_ASCII_("module") +#define QUERY_PARAM_DEFAULTFIRST _FILTER_CONFIG_FROM_ASCII_("default_first") +#define QUERY_CONSTVALUE_ALL _FILTER_CONFIG_FROM_ASCII_("all") + +#endif // _FILTER_CONFIG_CONSTANT_HXX_ diff --git a/filter/source/config/cache/contenthandlerfactory.cxx b/filter/source/config/cache/contenthandlerfactory.cxx new file mode 100644 index 000000000000..3863658d9abb --- /dev/null +++ b/filter/source/config/cache/contenthandlerfactory.cxx @@ -0,0 +1,201 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "contenthandlerfactory.hxx" +#include "querytokenizer.hxx" +#include "macros.hxx" +#include "constant.hxx" +#include "versions.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/lang/XInitialization.hpp> +#include <comphelper/enumhelper.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +ContentHandlerFactory::ContentHandlerFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + BaseContainer::init(xSMGR , + ContentHandlerFactory::impl_getImplementationName() , + ContentHandlerFactory::impl_getSupportedServiceNames(), + FilterCache::E_CONTENTHANDLER ); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +ContentHandlerFactory::~ContentHandlerFactory() +{ +} + +/*----------------------------------------------- + 16.07.2003 13:38 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL ContentHandlerFactory::createInstance(const ::rtl::OUString& sHandler) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + return createInstanceWithArguments(sHandler, css::uno::Sequence< css::uno::Any >()); +} + +/*----------------------------------------------- + 16.07.2003 13:40 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL ContentHandlerFactory::createInstanceWithArguments(const ::rtl::OUString& sHandler , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + css::uno::Reference< css::uno::XInterface > xHandler; + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + ::rtl::OUString sRealHandler = sHandler; + + #ifdef _FILTER_CONFIG_MIGRATION_Q_ + + /* -> TODO - HACK + check if the given handler name realy exist ... + Because our old implementation worked with an internal + type name instead of a handler name. For a small migration time + we must simulate this old feature :-( */ + + if (!m_rCache->hasItem(FilterCache::E_CONTENTHANDLER, sHandler) && m_rCache->hasItem(FilterCache::E_TYPE, sHandler)) + { + _FILTER_CONFIG_LOG_("ContentHandlerFactory::createInstanceWithArguments() ... simulate old type search functionality!\n"); + + css::uno::Sequence< ::rtl::OUString > lTypes(1); + lTypes[0] = sHandler; + + css::uno::Sequence< css::beans::NamedValue > lQuery(1); + lQuery[0].Name = PROPNAME_TYPES; + lQuery[0].Value <<= lTypes; + + css::uno::Reference< css::container::XEnumeration > xSet = createSubSetEnumerationByProperties(lQuery); + while(xSet->hasMoreElements()) + { + ::comphelper::SequenceAsHashMap lHandlerProps(xSet->nextElement()); + if (!(lHandlerProps[PROPNAME_NAME] >>= sRealHandler)) + continue; + } + + // prevent outside code against NoSuchElementException! + // But dont implement such defensive strategy for our new create handling :-) + if (!m_rCache->hasItem(FilterCache::E_CONTENTHANDLER, sRealHandler)) + return css::uno::Reference< css::uno::XInterface>(); + } + + /* <- HACK */ + + #endif // _FILTER_CONFIG_MIGRATION_Q_ + + // search handler on cache + CacheItem aHandler = m_rCache->getItem(FilterCache::E_CONTENTHANDLER, sRealHandler); + + // create service instance + xHandler = m_xSMGR->createInstance(sRealHandler); + + // initialize filter + css::uno::Reference< css::lang::XInitialization > xInit(xHandler, css::uno::UNO_QUERY); + if (xInit.is()) + { + // format: lInitData[0] = seq<PropertyValue>, which contains all configuration properties of this handler + // lInitData[1] = lArguments[0] + // ... + // lInitData[n] = lArguments[n-1] + css::uno::Sequence< css::beans::PropertyValue > lConfig; + aHandler >> lConfig; + + ::comphelper::SequenceAsVector< css::uno::Any > stlArguments(lArguments); + stlArguments.insert(stlArguments.begin(), css::uno::makeAny(lConfig)); + + css::uno::Sequence< css::uno::Any > lInitData; + stlArguments >> lInitData; + + xInit->initialize(lInitData); + } + + return xHandler; + // <- SAFE +} + +/*----------------------------------------------- + 09.07.2003 07:46 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > SAL_CALL ContentHandlerFactory::getAvailableServiceNames() + throw(css::uno::RuntimeException) +{ + // must be the same list as ((XNameAccess*)this)->getElementNames() return! + return getElementNames(); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +::rtl::OUString ContentHandlerFactory::impl_getImplementationName() +{ + return ::rtl::OUString::createFromAscii("com.sun.star.comp.filter.config.ContentHandlerFactory"); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > ContentHandlerFactory::impl_getSupportedServiceNames() +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames(1); + lServiceNames[0] = ::rtl::OUString::createFromAscii("com.sun.star.frame.ContentHandlerFactory"); + return lServiceNames; +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL ContentHandlerFactory::impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + ContentHandlerFactory* pNew = new ContentHandlerFactory(xSMGR); + return css::uno::Reference< css::uno::XInterface >(static_cast< css::lang::XMultiServiceFactory* >(pNew), css::uno::UNO_QUERY); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/contenthandlerfactory.hxx b/filter/source/config/cache/contenthandlerfactory.hxx new file mode 100644 index 000000000000..a50f91c0b61e --- /dev/null +++ b/filter/source/config/cache/contenthandlerfactory.hxx @@ -0,0 +1,148 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_CONTENTHANDLERFACTORY_HXX_ +#define __FILTER_CONFIG_CONTENTHANDLERFACTORY_HXX_ + +//_______________________________________________ +// includes + +#include "basecontainer.hxx" +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements the service <type scope="com.sun.star.document">ContentHandlerFactory</type>. + */ +class ContentHandlerFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer , + css::lang::XMultiServiceFactory > +{ + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor to connect this interface wrapper to + the global filter cache instance ... + + @param xSMGR + reference to the uno service manager, which created this service instance. + */ + ContentHandlerFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~ContentHandlerFactory(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XMultiServiceFactory + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance(const ::rtl::OUString& sHandler) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments(const ::rtl::OUString& sHandler , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames() + throw(css::uno::RuntimeException); + + //------------------------------------------- + // static uno helper! + + public: + + //--------------------------------------- + + /** @short return the uno implementation name of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix uno implementation name of this class. + */ + static ::rtl::OUString impl_getImplementationName(); + + //--------------------------------------- + + /** @short return the list of supported uno services of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix list of uno services supported by this class. + */ + static css::uno::Sequence< ::rtl::OUString > impl_getSupportedServiceNames(); + + //--------------------------------------- + + /** @short return a new intsnace of this class. + + @descr This method is used by the uno service manager, to create + a new instance of this service if needed. + + @param xSMGR + reference to the uno service manager, which require + this new instance. It should be passed to the new object + so it can be used internaly to create own needed uno resources. + + @return The new instance of this service as an uno reference. + */ + static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_CONTENTHANDLERFACTORY_HXX_ diff --git a/filter/source/config/cache/filtercache.cxx b/filter/source/config/cache/filtercache.cxx new file mode 100644 index 000000000000..d4435e2182f1 --- /dev/null +++ b/filter/source/config/cache/filtercache.cxx @@ -0,0 +1,2536 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "filtercache.hxx" +#include "lateinitlistener.hxx" +#include "macros.hxx" +#include "constant.hxx" +#include "cacheupdatelistener.hxx" + +/*TODO see using below ... */ +#define AS_ENABLE_FILTER_UINAMES +#define WORKAROUND_EXCEPTION_PROBLEM + +//_______________________________________________ +// includes +#include <com/sun/star/util/XChangesBatch.hpp> +#include <com/sun/star/container/XHierarchicalNameAccess.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <com/sun/star/beans/XPropertySet.hpp> +#include <com/sun/star/beans/XProperty.hpp> +#include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/beans/Property.hpp> +#include <com/sun/star/beans/PropertyAttribute.hpp> +#include <com/sun/star/document/CorruptedFilterConfigurationException.hpp> +#include <comphelper/sequenceasvector.hxx> +#include <comphelper/locale.hxx> +#include <unotools/processfactory.hxx> + +#ifndef _UNOTOOLS_CONFIGPATHES_HXX_ +#include <unotools/configpathes.hxx> +#endif +#include <rtl/ustrbuf.hxx> +#include <rtl/logfile.hxx> +#include <rtl/uri.hxx> +#include <tools/urlobj.hxx> +#include <tools/wldcrd.hxx> + +#include <comphelper/configurationhelper.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +// Error message in case filter config seems to be corrupted. +// Note: Dont tell user something about "setup -repair"! +// Its no longer supported by using native installers ... +static ::rtl::OUString MESSAGE_CORRUPTED_FILTERCONFIG = ::rtl::OUString::createFromAscii("The filter configuration appears to be defective. Please install the office suite again."); + +/*----------------------------------------------- + 15.03.2004 08:59 +-----------------------------------------------*/ +FilterCache::FilterCache() + : BaseLock ( ) + , m_xSMGR (::comphelper::getProcessServiceFactory()) + , m_eFillState(E_CONTAINS_NOTHING ) +{ + RTL_LOGFILE_TRACE("{ (as96863) FilterCache lifetime"); +} + +/*----------------------------------------------- + 15.03.2004 08:59 +-----------------------------------------------*/ +FilterCache::~FilterCache() +{ + RTL_LOGFILE_TRACE("} (as96863) FilterCache lifetime"); +} + +/*----------------------------------------------- + 03.03.2004 11:27 +-----------------------------------------------*/ +FilterCache* FilterCache::clone() const +{ + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + FilterCache* pClone = new FilterCache(); + + // Dont copy the configuration access points here. + // They will be created on demand inside the cloned instance, + // if they are needed. + + pClone->m_xSMGR = m_xSMGR; + + pClone->m_lTypes = m_lTypes; + pClone->m_lDetectServices = m_lDetectServices; + pClone->m_lFilters = m_lFilters; + pClone->m_lFrameLoaders = m_lFrameLoaders; + pClone->m_lContentHandlers = m_lContentHandlers; + pClone->m_lExtensions2Types = m_lExtensions2Types; + pClone->m_lURLPattern2Types = m_lURLPattern2Types; + + pClone->m_sActLocale = m_sActLocale; + pClone->m_sFormatName = m_sFormatName; + pClone->m_sFormatVersion = m_sFormatVersion; + + pClone->m_eFillState = m_eFillState; + + pClone->m_lChangedTypes = m_lChangedTypes; + pClone->m_lChangedFilters = m_lChangedFilters; + pClone->m_lChangedDetectServices = m_lChangedDetectServices; + pClone->m_lChangedFrameLoaders = m_lChangedFrameLoaders; + pClone->m_lChangedContentHandlers = m_lChangedContentHandlers; + + return pClone; + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.03.2004 14:39 +-----------------------------------------------*/ +void FilterCache::takeOver(const FilterCache& rClone) +{ + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // a) + // Dont copy the configuration access points here! + // We must use our own ones ... + + // b) + // Further we can ignore the uno service manager. + // We should already have a valid instance. + + // c) + // Take over only changed items! + // Otherwhise we risk the following scenario: + // c1) clone_1 contains changed filters + // c2) clone_2 container changed types + // c3) clone_1 take over changed filters and unchanged types + // c4) clone_2 take over unchanged filters(!) and changed types(!) + // c5) c4 overwrites c3! + + if (rClone.m_lChangedTypes.size()>0) + m_lTypes = rClone.m_lTypes; + if (rClone.m_lChangedDetectServices.size()>0) + m_lDetectServices = rClone.m_lDetectServices; + if (rClone.m_lChangedFilters.size()>0) + m_lFilters = rClone.m_lFilters; + if (rClone.m_lChangedFrameLoaders.size()>0) + m_lFrameLoaders = rClone.m_lFrameLoaders; + if (rClone.m_lChangedContentHandlers.size()>0) + m_lContentHandlers = rClone.m_lContentHandlers; + + m_lChangedTypes.clear(); + m_lChangedDetectServices.clear(); + m_lChangedFilters.clear(); + m_lChangedFrameLoaders.clear(); + m_lChangedContentHandlers.clear(); + + m_sActLocale = rClone.m_sActLocale; + m_sFormatName = rClone.m_sFormatName; + m_sFormatVersion = rClone.m_sFormatVersion; + + m_eFillState = rClone.m_eFillState; + + // renew all dependencies and optimizations + // Because we cant be shure, that changed filters on one clone + // and changed types of another clone work together. + // But here we can check against the lates changes ... + impl_validateAndOptimize(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 28.10.2003 09:01 +-----------------------------------------------*/ +void FilterCache::load(EFillState eRequired, +#if OSL_DEBUG_LEVEL > 1 + sal_Bool bByThread +#else + sal_Bool +#endif +) + throw(css::uno::Exception) +{ + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // check if required fill state is already reached ... + // There is nothing to do then. + if ((m_eFillState & eRequired) == eRequired) + return; + +#if OSL_DEBUG_LEVEL > 1 && !defined(OS2) + if ( + (!bByThread) && + ( + ((eRequired & E_CONTAINS_FILTERS) == E_CONTAINS_FILTERS) || + ((eRequired & E_CONTAINS_ALL ) == E_CONTAINS_ALL ) + ) + ) + { + OSL_ENSURE(sal_False, "Who disturb our \"fill cache on demand\" feature and force loading of ALL data during office startup? Please optimize your code, so a full filled filter cache is not realy needed here!"); + } +#endif + + // Otherwhise load the missing items. + + // ------------------------------------------ + // a) load some const values from configration. + // These values are needed there for loading + // config items ... + // Further we load some std items from the + // configuration so we can try to load the first + // office document with a minimal set of values. + if (m_eFillState == E_CONTAINS_NOTHING) + { + impl_getDirectCFGValue(CFGDIRECTKEY_OFFICELOCALE) >>= m_sActLocale; + if (!m_sActLocale.getLength()) + { + _FILTER_CONFIG_LOG_1_("FilterCache::ctor() ... could not specify office locale => use default \"%s\"\n", _FILTER_CONFIG_TO_ASCII_(DEFAULT_OFFICELOCALE)); + m_sActLocale = DEFAULT_OFFICELOCALE; + } + + impl_getDirectCFGValue(CFGDIRECTKEY_FORMATNAME) >>= m_sFormatName; + if (!m_sFormatName.getLength()) + impl_getDirectCFGValue(CFGDIRECTKEY_PRODUCTNAME) >>= m_sFormatName; + + if (!m_sFormatName.getLength()) + { + _FILTER_CONFIG_LOG_1_("FilterCache::ctor() ... could not specify format name => use default \"%s\"\n", _FILTER_CONFIG_TO_ASCII_(DEFAULT_FORMATNAME)); + m_sFormatName = DEFAULT_FORMATNAME; + } + + impl_getDirectCFGValue(CFGDIRECTKEY_FORMATVERSION) >>= m_sFormatVersion; + if (!m_sFormatVersion.getLength()) + { + _FILTER_CONFIG_LOG_1_("FilterCache::ctor() ... could not specify format version => use default \"%s\"\n", _FILTER_CONFIG_TO_ASCII_(DEFAULT_FORMATVERSION)); + m_sFormatVersion = DEFAULT_FORMATVERSION; + } + + // Support the old configuration support. Read it only one times during office runtime! + impl_readOldFormat(); + + // enable "loadOnDemand" feature ... + // Create uno listener, which waits for finishing the office startup + // and starts a thread, which calls loadAll() at this filter cache. + // Note: Its not a leak to create this listener with new here. + // It kills itself after working! + /* LateInitListener* pLateInit = */ new LateInitListener(m_xSMGR); + } + + // ------------------------------------------ + // b) If the required fill state was not reached + // but std values was already loaded ... + // we must load some further missing items. + impl_load(eRequired); + // <- SAFE +} + +/*----------------------------------------------- + 28.10.2003 09:50 +-----------------------------------------------*/ +sal_Bool FilterCache::isFillState(FilterCache::EFillState eState) const + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + return ((m_eFillState & eState) == eState); + // <- SAFE +} + +/*----------------------------------------------- + 14.07.2003 10:45 +-----------------------------------------------*/ +OUStringList FilterCache::getMatchingItemsByProps( EItemType eType , + const CacheItem& lIProps, + const CacheItem& lEProps) const + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + OUStringList lKeys; + + // search items, which provides all needed properties of set "lIProps" + // but not of set "lEProps"! + for (CacheItemList::const_iterator pIt = rList.begin(); + pIt != rList.end() ; + ++pIt ) + { + _FILTER_CONFIG_LOG_1_("getMatchingProps for \"%s\" ...\n", + _FILTER_CONFIG_TO_ASCII_(pIt->first)) + if ( + (pIt->second.haveProps(lIProps) ) && + (pIt->second.dontHaveProps(lEProps)) + ) + { + lKeys.push_back(pIt->first); + } + } + + return lKeys; + // <- SAFE +} + +/*----------------------------------------------- + 02.07.2003 09:32 +-----------------------------------------------*/ +sal_Bool FilterCache::hasItems(EItemType eType) const + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + return (rList.size()>0); + // <- SAFE +} + +/*----------------------------------------------- + 02.07.2003 11:48 +-----------------------------------------------*/ +OUStringList FilterCache::getItemNames(EItemType eType) const + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + OUStringList lKeys; + for (CacheItemList::const_iterator pIt = rList.begin(); + pIt != rList.end() ; + ++pIt ) + { + lKeys.push_back(pIt->first); + } + return lKeys; + // <- SAFE +} + +/*----------------------------------------------- + 27.10.2003 08:37 +-----------------------------------------------*/ +sal_Bool FilterCache::hasItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + // if item could not be found - check if it can be loaded + // from the underlying configuration layer. Might it was not already + // loaded into this FilterCache object before. + CacheItemList::const_iterator pIt = rList.find(sItem); + if (pIt != rList.end()) + return sal_True; + + try + { + impl_loadItemOnDemand(eType, sItem); + // no exception => item could be loaded! + return sal_True; + } + catch(const css::container::NoSuchElementException&) + {} + + return sal_False; + // <- SAFE +} + +/*----------------------------------------------- + 17.07.2006 09:15 +-----------------------------------------------*/ +CacheItem FilterCache::getItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown if "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + // check if item exists ... + CacheItemList::iterator pIt = rList.find(sItem); + if (pIt == rList.end()) + { + // ... or load it on demand from the + // underlying configuration layer. + // Note: NoSuchElementException is thrown automaticly here if + // item could not be loaded! + pIt = impl_loadItemOnDemand(eType, sItem); + } + + /* Workaround for #137955# + Draw types and filters are installed ... but draw was disabled during setup. + We must supress accessing these filters. Otherwise the office can crash. + Solution for the next major release: do not install those filters ! + */ + if (eType == E_FILTER) + { + CacheItem& rFilter = pIt->second; + ::rtl::OUString sDocService; + rFilter[PROPNAME_DOCUMENTSERVICE] >>= sDocService; + + // --> PB 2006-10-18 #142498# + // In Standalone-Impress the module WriterWeb is not installed + // but it is there to load help pages + sal_Bool bIsHelpFilter = sItem.equalsAscii( "writer_web_HTML_help" ); + + if ( !bIsHelpFilter && !impl_isModuleInstalled(sDocService) ) + // <-- + { + ::rtl::OUStringBuffer sMsg(256); + sMsg.appendAscii("The requested filter '" ); + sMsg.append (sItem ); + sMsg.appendAscii("' exists ... but it shouldnt; because the corresponding OOo module was not installed."); + throw css::container::NoSuchElementException(sMsg.makeStringAndClear(), css::uno::Reference< css::uno::XInterface >()); + } + } + + return pIt->second; + // <- SAFE +} + +/*----------------------------------------------- + 03.03.2004 11:28 +-----------------------------------------------*/ +void FilterCache::removeItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + CacheItemList::iterator pItem = rList.find(sItem); + if (pItem == rList.end()) + pItem = impl_loadItemOnDemand(eType, sItem); // throws NoSuchELementException! + rList.erase(pItem); + + impl_addItem2FlushList(eType, sItem); +} + +/*----------------------------------------------- + 26.11.2003 13:28 +-----------------------------------------------*/ +void FilterCache::setItem( EItemType eType , + const ::rtl::OUString& sItem , + const CacheItem& aValue) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search for right list + // An exception is thrown �f "eType" is unknown. + // => rList will be valid everytimes next line is reached. + CacheItemList& rList = impl_getItemList(eType); + + // name must be part of the property set too ... otherwhise our + // container query cant work correctly + CacheItem aItem = aValue; + aItem[PROPNAME_NAME] <<= sItem; + aItem.validateUINames(m_sActLocale); + + // remove implicit properties as e.g. FINALIZED or MANDATORY + // They cant be saved here and must be readed on demand later, if they are needed. + removeStatePropsFromItem(aItem); + + rList[sItem] = aItem; + + impl_addItem2FlushList(eType, sItem); +} + +//----------------------------------------------- +void FilterCache::refreshItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + impl_loadItemOnDemand(eType, sItem); +} + +/*----------------------------------------------- + 27.10.2003 08:14 +-----------------------------------------------*/ +void FilterCache::addStatePropsToItem( EItemType eType, + const ::rtl::OUString& sItem, + CacheItem& rItem) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // Note: Opening of the configuration layer throws some exceptions + // if it failed. So we dont must check any reference here ... + css::uno::Reference< css::container::XNameAccess > xPackage; + css::uno::Reference< css::container::XNameAccess > xSet; + switch(eType) + { + case E_TYPE : + { + xPackage = css::uno::Reference< css::container::XNameAccess >(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY); + xPackage->getByName(CFGSET_TYPES) >>= xSet; + } + break; + + case E_FILTER : + { + xPackage = css::uno::Reference< css::container::XNameAccess >(impl_openConfig(E_PROVIDER_FILTERS), css::uno::UNO_QUERY); + xPackage->getByName(CFGSET_FILTERS) >>= xSet; + } + break; + + case E_FRAMELOADER : + { + /* TODO + Hack --> + The default frame loader cant be located inside te normal set of frame loaders. + Its an atomic property inside the misc cfg package. So we cant retrieve the information + about FINALIZED and MANDATORY very easy ... :-( + => set it to readonly/required everytimes :-) + */ + css::uno::Any aDirectValue = impl_getDirectCFGValue(CFGDIRECTKEY_DEFAULTFRAMELOADER); + ::rtl::OUString sDefaultFrameLoader; + if ( + (aDirectValue >>= sDefaultFrameLoader) && + (sDefaultFrameLoader.getLength() ) && + (sItem.equals(sDefaultFrameLoader) ) + ) + { + rItem[PROPNAME_FINALIZED] <<= sal_True; + rItem[PROPNAME_MANDATORY] <<= sal_True; + return; + } + /* <-- HACK */ + + xPackage = css::uno::Reference< css::container::XNameAccess >(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY); + xPackage->getByName(CFGSET_FRAMELOADERS) >>= xSet; + } + break; + + case E_CONTENTHANDLER : + { + xPackage = css::uno::Reference< css::container::XNameAccess >(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY); + xPackage->getByName(CFGSET_CONTENTHANDLERS) >>= xSet; + } + break; + default: break; + } + + try + { + css::uno::Reference< css::beans::XProperty > xItem; + xSet->getByName(sItem) >>= xItem; + css::beans::Property aDescription = xItem->getAsProperty(); + + sal_Bool bFinalized = ((aDescription.Attributes & css::beans::PropertyAttribute::READONLY ) == css::beans::PropertyAttribute::READONLY ); + sal_Bool bMandatory = ((aDescription.Attributes & css::beans::PropertyAttribute::REMOVEABLE) != css::beans::PropertyAttribute::REMOVEABLE); + + rItem[PROPNAME_FINALIZED] <<= bFinalized; + rItem[PROPNAME_MANDATORY] <<= bMandatory; + } + catch(const css::container::NoSuchElementException&) + { + /* Ignore exceptions for missing elements inside configuration. + May by the following reason exists: + - The item does not exists inside the new configuration package org.openoffice.TypeDetection - but + we got it from the old package org.openoffice.Office/TypeDetection. We dont migrate such items + automaticly to the new format. Because it will disturb e.g. the deinstallation of an external filter + package. Because such external filter can remove the old file - but not the automaticly created new one ... + + => mark item as FINALIZED / MANDATORY, we dont support writing to the old format + */ + rItem[PROPNAME_FINALIZED] <<= sal_True; + rItem[PROPNAME_MANDATORY] <<= sal_True; + } + + // <- SAFE +} + +/*----------------------------------------------- + 05.03.2004 10:36 +-----------------------------------------------*/ +void FilterCache::removeStatePropsFromItem(CacheItem& rItem) + throw(css::uno::Exception) +{ + CacheItem::iterator pIt; + pIt = rItem.find(PROPNAME_FINALIZED); + if (pIt != rItem.end()) + rItem.erase(pIt); + pIt = rItem.find(PROPNAME_MANDATORY); + if (pIt != rItem.end()) + rItem.erase(pIt); +} + +/*----------------------------------------------- + 02.07.2003 09:17 +-----------------------------------------------*/ +void FilterCache::flush() + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // renew all dependencies and optimizations + impl_validateAndOptimize(); + + if (m_lChangedTypes.size() > 0) + { + css::uno::Reference< css::container::XNameAccess > xConfig(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY); + css::uno::Reference< css::container::XNameAccess > xSet ; + + xConfig->getByName(CFGSET_TYPES) >>= xSet; + impl_flushByList(xSet, E_TYPE, m_lTypes, m_lChangedTypes); + + css::uno::Reference< css::util::XChangesBatch > xFlush(xConfig, css::uno::UNO_QUERY); + xFlush->commitChanges(); + } + + if (m_lChangedFilters.size() > 0) + { + css::uno::Reference< css::container::XNameAccess > xConfig(impl_openConfig(E_PROVIDER_FILTERS), css::uno::UNO_QUERY); + css::uno::Reference< css::container::XNameAccess > xSet ; + + xConfig->getByName(CFGSET_FILTERS) >>= xSet; + impl_flushByList(xSet, E_FILTER, m_lFilters, m_lChangedFilters); + + css::uno::Reference< css::util::XChangesBatch > xFlush(xConfig, css::uno::UNO_QUERY); + xFlush->commitChanges(); + } + + /*TODO FrameLoader/ContentHandler must be flushed here too ... */ +} + +/*----------------------------------------------- + 20.10.2003 09:22 +-----------------------------------------------*/ +void FilterCache::impl_flushByList(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType , + const CacheItemList& rCache, + const OUStringList& lItems) + throw(css::uno::Exception) +{ + css::uno::Reference< css::container::XNameContainer > xAddRemoveSet = css::uno::Reference< css::container::XNameContainer > (xSet, css::uno::UNO_QUERY); + css::uno::Reference< css::container::XNameReplace > xReplaceeSet = css::uno::Reference< css::container::XNameReplace > (xSet, css::uno::UNO_QUERY); + css::uno::Reference< css::lang::XSingleServiceFactory > xFactory = css::uno::Reference< css::lang::XSingleServiceFactory >(xSet, css::uno::UNO_QUERY); + + for (OUStringList::const_iterator pIt = lItems.begin(); + pIt != lItems.end() ; + ++pIt ) + { + const ::rtl::OUString& sItem = *pIt; + EItemFlushState eState = impl_specifyFlushOperation(xSet, rCache, sItem); + switch(eState) + { + case E_ITEM_REMOVED : + { + xAddRemoveSet->removeByName(sItem); + } + break; + + case E_ITEM_ADDED : + { + css::uno::Reference< css::container::XNameReplace > xItem (xFactory->createInstance(), css::uno::UNO_QUERY); + + // special case. no exception - but not a valid item => set must be finalized or mandatory! + // Reject flush operation by throwing an exception. At least one item couldnt be flushed. + if (!xItem.is()) + throw css::uno::Exception(::rtl::OUString::createFromAscii("Cant add item. Set is finalized or mandatory!"), + css::uno::Reference< css::uno::XInterface >() ); + + CacheItemList::const_iterator pItem = rCache.find(sItem); + impl_saveItem(xItem, eType, pItem->second); + xAddRemoveSet->insertByName(sItem, css::uno::makeAny(xItem)); + } + break; + + case E_ITEM_CHANGED : + { + css::uno::Reference< css::container::XNameReplace > xItem; + xSet->getByName(sItem) >>= xItem; + + // special case. no exception - but not a valid item => it must be finalized or mandatory! + // Reject flush operation by throwing an exception. At least one item couldnt be flushed. + if (!xItem.is()) + throw css::uno::Exception(::rtl::OUString::createFromAscii("Cant change item. Its finalized or mandatory!"), + css::uno::Reference< css::uno::XInterface >() ); + + CacheItemList::const_iterator pItem = rCache.find(sItem); + impl_saveItem(xItem, eType, pItem->second); + } + break; + default: break; + } + } +} + +/*----------------------------------------------- + 03.11.2003 08:38 +-----------------------------------------------*/ +void FilterCache::detectFlatForURL(const css::util::URL& aURL , + FlatDetection& rFlatTypes) const + throw(css::uno::Exception) +{ + // extract extension from URL, so it can be used directly as key into our hash map! + // Note further: It must be converted to lower case, because the optimize hash + // (which maps extensions to types) work with lower case key strings! + INetURLObject aParser (aURL.Main); + ::rtl::OUString sExtension = aParser.getExtension(INetURLObject::LAST_SEGMENT , + sal_True , + INetURLObject::DECODE_WITH_CHARSET); + sExtension = sExtension.toAsciiLowerCase(); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + //******************************************* + // i) Step over all well known URL pattern + // and add registered types to the return list too + // Do it as first one - because: if a type match by a + // pattern a following deep detection can be supressed! + // Further we can stop after first match ... + for (CacheItemRegistration::const_iterator pPattReg = m_lURLPattern2Types.begin(); + pPattReg != m_lURLPattern2Types.end() ; + ++pPattReg ) + { + WildCard aPatternCheck(pPattReg->first); + if (aPatternCheck.Matches(aURL.Main)) + { + const OUStringList& rTypesForPattern = pPattReg->second; + + FlatDetectionInfo aInfo; + aInfo.sType = *(rTypesForPattern.begin()); + aInfo.bMatchByPattern = sal_True; + + rFlatTypes.push_back(aInfo); +// return; + } + } + + //******************************************* + // ii) search types matching to the given extension. + // Copy every macthing type without changing its order! + // Because preferred types was added as first one during + // loading configuration. + CacheItemRegistration::const_iterator pExtReg = m_lExtensions2Types.find(sExtension); + if (pExtReg != m_lExtensions2Types.end()) + { + const OUStringList& rTypesForExtension = pExtReg->second; + for (OUStringList::const_iterator pIt = rTypesForExtension.begin(); + pIt != rTypesForExtension.end() ; + ++pIt ) + { + FlatDetectionInfo aInfo; + aInfo.sType = *pIt; + aInfo.bMatchByExtension = sal_True; + + rFlatTypes.push_back(aInfo); + } + } + + aLock.clear(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.11.2003 08:38 +-----------------------------------------------*/ +CacheItemList& FilterCache::impl_getItemList(EItemType eType) const + throw(css::uno::Exception) +{ + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + switch(eType) + { + case E_TYPE : return m_lTypes ; + case E_FILTER : return m_lFilters ; + case E_FRAMELOADER : return m_lFrameLoaders ; + case E_CONTENTHANDLER : return m_lContentHandlers; + case E_DETECTSERVICE : return m_lDetectServices ; + + default : throw css::uno::Exception(::rtl::OUString::createFromAscii("unknown sub container requested."), + css::uno::Reference< css::uno::XInterface >() ); + } + + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 21.10.2003 13:20 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > FilterCache::impl_openConfig(EConfigProvider eProvider) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + ::rtl::OUString sPath ; + css::uno::Reference< css::uno::XInterface >* pConfig = 0; + css::uno::Reference< css::uno::XInterface > xOld ; + ::rtl::OString sRtlLog ; + FilterCache::EItemType eItemType( FilterCache::E_TYPE ) ; + sal_Bool bStartListening = sal_False; + + switch(eProvider) + { + case E_PROVIDER_TYPES : + { + if (m_xConfigTypes.is()) + return m_xConfigTypes; + sPath = CFGPACKAGE_TD_TYPES; + pConfig = &m_xConfigTypes; + eItemType = FilterCache::E_TYPE; + bStartListening = sal_True; + sRtlLog = ::rtl::OString("framework (as96863) ::FilterCache::impl_openconfig(E_PROVIDER_TYPES)"); + } + break; + + case E_PROVIDER_FILTERS : + { + if (m_xConfigFilters.is()) + return m_xConfigFilters; + sPath = CFGPACKAGE_TD_FILTERS; + pConfig = &m_xConfigFilters; + eItemType = FilterCache::E_FILTER; + bStartListening = sal_True; + sRtlLog = ::rtl::OString("framework (as96863) ::FilterCache::impl_openconfig(E_PROVIDER_FILTERS)"); + } + break; + + case E_PROVIDER_OTHERS : + { + if (m_xConfigOthers.is()) + return m_xConfigOthers; + sPath = CFGPACKAGE_TD_OTHERS; + pConfig = &m_xConfigOthers; + eItemType = FilterCache::E_TYPE; + sRtlLog = ::rtl::OString("framework (as96863) ::FilterCache::impl_openconfig(E_PROVIDER_OTHERS)"); + } + break; + + case E_PROVIDER_OLD : + { + // This special provider is used to work with + // the old configuration format only. Its not cached! + sPath = CFGPACKAGE_TD_OLD; + pConfig = &xOld; + sRtlLog = ::rtl::OString("framework (as96863) ::FilterCache::impl_openconfig(E_PROVIDER_OLD)"); + } + break; + + default : throw css::uno::Exception(::rtl::OUString::createFromAscii("These configuration node isnt supported here for open!"), 0); + } + + { + RTL_LOGFILE_CONTEXT(aLog, sRtlLog.getStr()); + *pConfig = impl_createConfigAccess(sPath , + sal_False, // bReadOnly + sal_True ); // bLocalesMode + } + + // Start listening for changes on that configuration access. + // We must not control the lifetime of this listener. Itself + // checks, when ist time to die :-) + if (bStartListening) + { + CacheUpdateListener* pListener = new CacheUpdateListener(m_xSMGR, *pConfig, eItemType); + pListener->startListening(); + } + + return *pConfig; + // <- SAFE +} + +/*----------------------------------------------- + 17.07.2003 10:10 +-----------------------------------------------*/ +css::uno::Any FilterCache::impl_getDirectCFGValue(const ::rtl::OUString& sDirectKey) +{ + ::rtl::OUString sRoot; + ::rtl::OUString sKey ; + + if ( + (!::utl::splitLastFromConfigurationPath(sDirectKey, sRoot, sKey)) || + (!sRoot.getLength() ) || + (!sKey.getLength() ) + ) + return css::uno::Any(); + + css::uno::Reference< css::uno::XInterface > xCfg = impl_createConfigAccess(sRoot , + sal_True , // bReadOnly + sal_False); // bLocalesMode + if (!xCfg.is()) + return css::uno::Any(); + + css::uno::Reference< css::container::XNameAccess > xAccess(xCfg, css::uno::UNO_QUERY); + if (!xAccess.is()) + return css::uno::Any(); + + css::uno::Any aValue; + try + { + aValue = xAccess->getByName(sKey); + } + catch(const css::uno::RuntimeException& exRun) + { throw exRun; } + #if OSL_DEBUG_LEVEL>0 + catch(const css::uno::Exception& ex) + #else + catch(const css::uno::Exception&) + #endif + { + #if OSL_DEBUG_LEVEL > 0 + OSL_ENSURE(sal_False, ::rtl::OUStringToOString(ex.Message, RTL_TEXTENCODING_UTF8).getStr()); + #endif + aValue.clear(); + } + + return aValue; +} + +/*----------------------------------------------- + 17.07.2003 09:49 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > FilterCache::impl_createConfigAccess(const ::rtl::OUString& sRoot , + sal_Bool bReadOnly , + sal_Bool bLocalesMode) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + css::uno::Reference< css::uno::XInterface > xCfg; + + try + { + css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider( + m_xSMGR->createInstance(SERVICE_CONFIGURATIONPROVIDER), css::uno::UNO_QUERY); + + if (!xConfigProvider.is()) + return css::uno::Reference< css::uno::XInterface >(); + + ::comphelper::SequenceAsVector< css::uno::Any > lParams; + css::beans::PropertyValue aParam ; + + // set root path + aParam.Name = _FILTER_CONFIG_FROM_ASCII_("nodepath"); + aParam.Value <<= sRoot; + lParams.push_back(css::uno::makeAny(aParam)); + + // enable "all locales mode" ... if required + if (bLocalesMode) + { + aParam.Name = _FILTER_CONFIG_FROM_ASCII_("locale"); + aParam.Value <<= _FILTER_CONFIG_FROM_ASCII_("*" ); + lParams.push_back(css::uno::makeAny(aParam)); + } + + // open it + if (bReadOnly) + xCfg = xConfigProvider->createInstanceWithArguments(SERVICE_CONFIGURATIONACCESS, lParams.getAsConstList()); + else + xCfg = xConfigProvider->createInstanceWithArguments(SERVICE_CONFIGURATIONUPDATEACCESS, lParams.getAsConstList()); + + // If configuration could not be opened ... but factory method does not throwed an exception + // trigger throwing of our own CorruptedFilterConfigurationException. + // Let message empty. The normal exception text show enough informations to the user. + if (! xCfg.is()) + throw css::uno::Exception( + _FILTER_CONFIG_FROM_ASCII_("Got NULL reference on opening configuration file ... but no exception."), + css::uno::Reference< css::uno::XInterface >()); + } + catch(const css::uno::Exception& ex) + { + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + ex.Message); + } + + return xCfg; + // <- SAFE +} + +/*----------------------------------------------- + 24.10.2003 10:03 +-----------------------------------------------*/ +void FilterCache::impl_validateAndOptimize() + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::impl_validateAndOptimize"); + + // First check if any filter or type could be readed + // from the underlying configuration! + sal_Bool bSomeTypesShouldExist = ((m_eFillState & E_CONTAINS_STANDARD ) == E_CONTAINS_STANDARD ); + sal_Bool bAllFiltersShouldExist = ((m_eFillState & E_CONTAINS_FILTERS ) == E_CONTAINS_FILTERS ); + +#if OSL_DEBUG_LEVEL > 0 + + sal_Int32 nWarnings = 0; + +// sal_Bool bAllTypesShouldExist = ((m_eFillState & E_CONTAINS_TYPES ) == E_CONTAINS_TYPES ); + sal_Bool bAllLoadersShouldExist = ((m_eFillState & E_CONTAINS_FRAMELOADERS ) == E_CONTAINS_FRAMELOADERS ); + sal_Bool bAllHandlersShouldExist = ((m_eFillState & E_CONTAINS_CONTENTHANDLERS) == E_CONTAINS_CONTENTHANDLERS); +#endif + + if ( + ( + (bSomeTypesShouldExist) && + (m_lTypes.size() < 1 ) + ) || + ( + (bAllFiltersShouldExist) && + (m_lFilters.size() < 1 ) + ) + ) + { + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + ::rtl::OUString::createFromAscii("The list of types or filters is empty.")); + } + + // Create a log for all detected problems, which + // occure in the next feew lines. + // If there are some real errors throw a RuntimException! + // If there are some warnings only, show an assertion. + sal_Int32 nErrors = 0; + ::rtl::OUStringBuffer sLog(256); + + CacheItemList::iterator pIt; + + for (pIt = m_lTypes.begin(); pIt != m_lTypes.end(); ++pIt) + { + ::rtl::OUString sType = pIt->first; + CacheItem aType = pIt->second; + + // create list of all known detect services / frame loader / content handler on demand + // Because these informations are available as type properties! + ::rtl::OUString sDetectService; + aType[PROPNAME_DETECTSERVICE ] >>= sDetectService; + if (sDetectService.getLength()) + impl_resolveItem4TypeRegistration(&m_lDetectServices, sDetectService, sType); + + // get its registration for file Extensions AND(!) URLPattern ... + // It doesnt matter if these items exists or if our + // used index access create some default ones ... + // only in case there is no filled set of Extensions AND + // no filled set of URLPattern -> we must try to remove this invalid item + // from this cache! + css::uno::Sequence< ::rtl::OUString > lExtensions; + css::uno::Sequence< ::rtl::OUString > lURLPattern; + aType[PROPNAME_EXTENSIONS] >>= lExtensions; + aType[PROPNAME_URLPATTERN] >>= lURLPattern; + sal_Int32 ce = lExtensions.getLength(); + sal_Int32 cu = lURLPattern.getLength(); + +#if OSL_DEBUG_LEVEL > 0 + + ::rtl::OUString sInternalTypeNameCheck; + aType[PROPNAME_NAME] >>= sInternalTypeNameCheck; + if (!sInternalTypeNameCheck.equals(sType)) + { + sLog.appendAscii("Warning\t:\t"); + sLog.appendAscii("The type \"" ); + sLog.append (sType ); + sLog.appendAscii("\" does support the property \"Name\" correctly.\n"); + ++nWarnings; + } + + if (!ce && !cu) + { + sLog.appendAscii("Warning\t:\t"); + sLog.appendAscii("The type \"" ); + sLog.append (sType ); + sLog.appendAscii("\" does not contain any URL pattern nor any extensions.\n"); + ++nWarnings; + } +#endif + + // create an optimized registration for this type to + // its set list of extensions/url pattern. If its a "normal" type + // set it at the end of this optimized list. But if its + // a "Preferred" one - set it to the front of this list. + // Of course multiple "Preferred" registrations can occure + // (they shouldnt - but they can!) ... Ignore it. The last + // preferred type is useable in the same manner then every + // other type! + sal_Bool bPreferred = sal_False; + aType[PROPNAME_PREFERRED] >>= bPreferred; + + const ::rtl::OUString* pExtensions = lExtensions.getConstArray(); + for (sal_Int32 e=0; e<ce; ++e) + { + // Note: We must be shure that adress the right hash entry + // does not depend from any upper/lower case problems ... + ::rtl::OUString sNormalizedExtension = pExtensions[e].toAsciiLowerCase(); + + OUStringList& lTypesForExtension = m_lExtensions2Types[sNormalizedExtension]; + if (::std::find(lTypesForExtension.begin(), lTypesForExtension.end(), sType) != lTypesForExtension.end()) + continue; + + if (bPreferred) + lTypesForExtension.insert(lTypesForExtension.begin(), sType); + else + lTypesForExtension.push_back(sType); + } + + const ::rtl::OUString* pURLPattern = lURLPattern.getConstArray(); + for (sal_Int32 u=0; u<cu; ++u) + { + OUStringList& lTypesForURLPattern = m_lURLPattern2Types[pURLPattern[u]]; + if (::std::find(lTypesForURLPattern.begin(), lTypesForURLPattern.end(), sType) != lTypesForURLPattern.end()) + continue; + + if (bPreferred) + lTypesForURLPattern.insert(lTypesForURLPattern.begin(), sType); + else + lTypesForURLPattern.push_back(sType); + } + +#if OSL_DEBUG_LEVEL > 0 + + // Dont check cross references between types and filters, if + // not all filters read from disk! + // OK - this cache can read single filters on demand too ... + // but then the fill state of this cache shouldnt be set to E_CONTAINS_FILTERS! + if (!bAllFiltersShouldExist) + continue; + + ::rtl::OUString sPrefFilter; + aType[PROPNAME_PREFERREDFILTER] >>= sPrefFilter; + if (!sPrefFilter.getLength()) + { + // OK - there is no filter for this type. But thats not an error. + // May be it can be handled by a ContentHandler ... + // But at this time its not guaranteed that there is any ContentHandler + // or FrameLoader inside this cache ... but on disk ... + sal_Bool bReferencedByLoader = sal_True; + sal_Bool bReferencedByHandler = sal_True; + if (bAllLoadersShouldExist) + bReferencedByLoader = (impl_searchFrameLoaderForType(sType).getLength()!=0); + + if (bAllHandlersShouldExist) + bReferencedByHandler = (impl_searchContentHandlerForType(sType).getLength()!=0); + + if ( + (!bReferencedByLoader ) && + (!bReferencedByHandler) + ) + { + sLog.appendAscii("Warning\t:\t" ); + sLog.appendAscii("The type \"" ); + sLog.append (sType ); + sLog.appendAscii("\" isnt used by any filter, loader or content handler.\n"); + ++nWarnings; + } + } + + if (sPrefFilter.getLength()) + { + CacheItemList::const_iterator pIt2 = m_lFilters.find(sPrefFilter); + if (pIt2 == m_lFilters.end()) + { + if (bAllFiltersShouldExist) + { + ++nWarnings; // preferred filters can point to a non-installed office module ! no error ... it's a warning only .-( + sLog.appendAscii("error\t:\t"); + } + else + { + ++nWarnings; + sLog.appendAscii("warning\t:\t"); + } + + sLog.appendAscii("The type \"" ); + sLog.append (sType ); + sLog.appendAscii("\" points to an invalid filter \""); + sLog.append (sPrefFilter ); + sLog.appendAscii("\".\n" ); + + continue; + } + + CacheItem aPrefFilter = pIt2->second; + ::rtl::OUString sFilterTypeReg; + aPrefFilter[PROPNAME_TYPE] >>= sFilterTypeReg; + if (sFilterTypeReg != sType) + { + sLog.appendAscii("error\t:\t" ); + sLog.appendAscii("The preferred filter \"" ); + sLog.append (sPrefFilter ); + sLog.appendAscii("\" of type \"" ); + sLog.append (sType ); + sLog.appendAscii("is registered for another type \""); + sLog.append (sFilterTypeReg ); + sLog.appendAscii("\".\n" ); + ++nErrors; + } + + sal_Int32 nFlags = 0; + aPrefFilter[PROPNAME_FLAGS] >>= nFlags; + if ((nFlags & FLAGVAL_IMPORT) != FLAGVAL_IMPORT) + { + sLog.appendAscii("error\t:\t" ); + sLog.appendAscii("The preferred filter \"" ); + sLog.append (sPrefFilter ); + sLog.appendAscii("\" of type \"" ); + sLog.append (sType ); + sLog.appendAscii("\" is not an IMPORT filter!\n"); + ++nErrors; + } + + ::rtl::OUString sInternalFilterNameCheck; + aPrefFilter[PROPNAME_NAME] >>= sInternalFilterNameCheck; + if (!sInternalFilterNameCheck.equals(sPrefFilter)) + { + sLog.appendAscii("Warning\t:\t" ); + sLog.appendAscii("The filter \"" ); + sLog.append (sPrefFilter ); + sLog.appendAscii("\" does support the property \"Name\" correctly.\n"); + ++nWarnings; + } + } +#endif + } + + // create dependencies between the global default frame loader + // and all types (and of course if registered filters), which + // does not registered for any other loader. + css::uno::Any aDirectValue = impl_getDirectCFGValue(CFGDIRECTKEY_DEFAULTFRAMELOADER); + ::rtl::OUString sDefaultFrameLoader; + + if ( + (!(aDirectValue >>= sDefaultFrameLoader)) || + (!sDefaultFrameLoader.getLength() ) + ) + { + sLog.appendAscii("error\t:\t" ); + sLog.appendAscii("There is no valid default frame loader!?\n"); + ++nErrors; + } + + // a) get list of all well known types + // b) step over all well known frame loader services + // and remove all types from list a), which already + // referenced by a loader b) + OUStringList lTypes = getItemNames(E_TYPE); + for ( pIt = m_lFrameLoaders.begin(); + pIt != m_lFrameLoaders.end() ; + ++pIt ) + { + // Note: of course the default loader must be ignored here. + // Because we replace its registration later completly with all + // types, which are not referenced by any other loader. + // So we can avaoid our code against the complexity of a diff! + ::rtl::OUString sLoader = pIt->first; + if (sLoader.equals(sDefaultFrameLoader)) + continue; + + CacheItem& rLoader = pIt->second; + css::uno::Any& rTypesReg = rLoader[PROPNAME_TYPES]; + OUStringList lTypesReg (rTypesReg); + + for (OUStringList::const_iterator pTypesReg = lTypesReg.begin(); + pTypesReg != lTypesReg.end() ; + ++pTypesReg ) + { + OUStringList::iterator pTypeCheck = ::std::find(lTypes.begin(), lTypes.end(), *pTypesReg); + if (pTypeCheck != lTypes.end()) + lTypes.erase(pTypeCheck); + } + } + + CacheItem& rDefaultLoader = m_lFrameLoaders[sDefaultFrameLoader]; + rDefaultLoader[PROPNAME_NAME ] <<= sDefaultFrameLoader; + rDefaultLoader[PROPNAME_TYPES] <<= lTypes.getAsConstList(); + + ::rtl::OUString sLogOut = sLog.makeStringAndClear(); + OSL_ENSURE(!nErrors, ::rtl::OUStringToOString(sLogOut,RTL_TEXTENCODING_UTF8).getStr()); + if (nErrors>0) + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + sLogOut); + OSL_ENSURE(!nWarnings, ::rtl::OUStringToOString(sLogOut,RTL_TEXTENCODING_UTF8).getStr()); + + // <- SAFE +} + +/*----------------------------------------------- + 20.10.2003 08:15 +-----------------------------------------------*/ +void FilterCache::impl_addItem2FlushList( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + OUStringList* pList = 0; + switch(eType) + { + case E_TYPE : + pList = &m_lChangedTypes; + break; + + case E_FILTER : + pList = &m_lChangedFilters; + break; + + case E_FRAMELOADER : + pList = &m_lChangedFrameLoaders; + break; + + case E_CONTENTHANDLER : + pList = &m_lChangedContentHandlers; + break; + + case E_DETECTSERVICE : + pList = &m_lChangedDetectServices; + break; + + default : throw css::uno::Exception(::rtl::OUString::createFromAscii("unsupported item type"), 0); + } + + OUStringList::const_iterator pItem = ::std::find(pList->begin(), pList->end(), sItem); + if (pItem == pList->end()) + pList->push_back(sItem); +} + +/*----------------------------------------------- + 20.10.2003 08:49 +-----------------------------------------------*/ +FilterCache::EItemFlushState FilterCache::impl_specifyFlushOperation(const css::uno::Reference< css::container::XNameAccess >& xSet , + const CacheItemList& rList, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + sal_Bool bExistsInConfigLayer = xSet->hasByName(sItem); + sal_Bool bExistsInMemory = (rList.find(sItem) != rList.end()); + + EItemFlushState eState( E_ITEM_UNCHANGED ); + + // !? ... such situation can occure, if an item was added and(!) removed before it was flushed :-) + if (!bExistsInConfigLayer && !bExistsInMemory) + eState = E_ITEM_UNCHANGED; + else + if (!bExistsInConfigLayer && bExistsInMemory) + eState = E_ITEM_ADDED; + else + if (bExistsInConfigLayer && bExistsInMemory) + eState = E_ITEM_CHANGED; + else + if (bExistsInConfigLayer && !bExistsInMemory) + eState = E_ITEM_REMOVED; + + return eState; +} + +/*----------------------------------------------- + 14.10.2003 09:26 +-----------------------------------------------*/ +void FilterCache::impl_resolveItem4TypeRegistration( CacheItemList* pList, + const ::rtl::OUString& sItem, + const ::rtl::OUString& sType) + throw(css::uno::Exception) +{ + CacheItem& rItem = (*pList)[sItem]; + // In case its a new created entry (automaticly done by the hash_map index operator!) + // we must be shure, that this entry has its own name as property available. + // Its needed later at our container interface! + rItem[PROPNAME_NAME] <<= sItem; + + OUStringList lTypeRegs(rItem[PROPNAME_TYPES]); + if (::std::find(lTypeRegs.begin(), lTypeRegs.end(), sType) == lTypeRegs.end()) + { + lTypeRegs.push_back(sType); + rItem[PROPNAME_TYPES] <<= lTypeRegs.getAsConstList(); + } +} + +/*----------------------------------------------- + 28.10.2003 09:18 +-----------------------------------------------*/ +void FilterCache::impl_load(EFillState eRequiredState) + throw(css::uno::Exception) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // Attention: Detect services are part of the standard set! + // So there is no need to handle it seperatly. + + // ------------------------------------------ + // a) The standard set of config value is needed. + if ( + ((eRequiredState & E_CONTAINS_STANDARD) == E_CONTAINS_STANDARD) && + ((m_eFillState & E_CONTAINS_STANDARD) != E_CONTAINS_STANDARD) + ) + { + // Attention! If config couldnt be opened successfully + // and exception os thrown automaticly and must be forwarded + // to our calli ... + css::uno::Reference< css::container::XNameAccess > xTypes(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY); + { + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::load std"); + impl_loadSet(xTypes, E_TYPE, E_READ_STANDARD, &m_lTypes); + } + } + + // ------------------------------------------ + // b) We need all type informations ... + if ( + ((eRequiredState & E_CONTAINS_TYPES) == E_CONTAINS_TYPES) && + ((m_eFillState & E_CONTAINS_TYPES) != E_CONTAINS_TYPES) + ) + { + // Attention! If config couldnt be opened successfully + // and exception os thrown automaticly and must be forwarded + // to our calli ... + css::uno::Reference< css::container::XNameAccess > xTypes(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY); + { + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::load all types"); + impl_loadSet(xTypes, E_TYPE, E_READ_UPDATE, &m_lTypes); + } + } + + // ------------------------------------------ + // c) We need all filter informations ... + if ( + ((eRequiredState & E_CONTAINS_FILTERS) == E_CONTAINS_FILTERS) && + ((m_eFillState & E_CONTAINS_FILTERS) != E_CONTAINS_FILTERS) + ) + { + // Attention! If config couldnt be opened successfully + // and exception os thrown automaticly and must be forwarded + // to our calli ... + css::uno::Reference< css::container::XNameAccess > xFilters(impl_openConfig(E_PROVIDER_FILTERS), css::uno::UNO_QUERY); + { + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::load all filters"); + impl_loadSet(xFilters, E_FILTER, E_READ_ALL, &m_lFilters); + } + } + + // ------------------------------------------ + // c) We need all frame loader informations ... + if ( + ((eRequiredState & E_CONTAINS_FRAMELOADERS) == E_CONTAINS_FRAMELOADERS) && + ((m_eFillState & E_CONTAINS_FRAMELOADERS) != E_CONTAINS_FRAMELOADERS) + ) + { + // Attention! If config couldnt be opened successfully + // and exception os thrown automaticly and must be forwarded + // to our calli ... + css::uno::Reference< css::container::XNameAccess > xLoaders(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY); + { + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::load all frame loader"); + impl_loadSet(xLoaders, E_FRAMELOADER, E_READ_ALL, &m_lFrameLoaders); + } + } + + // ------------------------------------------ + // d) We need all content handler informations ... + if ( + ((eRequiredState & E_CONTAINS_CONTENTHANDLERS) == E_CONTAINS_CONTENTHANDLERS) && + ((m_eFillState & E_CONTAINS_CONTENTHANDLERS) != E_CONTAINS_CONTENTHANDLERS) + ) + { + // Attention! If config couldnt be opened successfully + // and exception os thrown automaticly and must be forwarded + // to our calli ... + css::uno::Reference< css::container::XNameAccess > xHandlers(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY); + { + RTL_LOGFILE_CONTEXT( aLog, "framework (as96863) ::FilterCache::load all content handler"); + impl_loadSet(xHandlers, E_CONTENTHANDLER, E_READ_ALL, &m_lContentHandlers); + } + } + + // update fill state. Note: its a bit field, which combines different parts. + m_eFillState = (EFillState) ((sal_Int32)m_eFillState | (sal_Int32)eRequiredState); + + // any data readed? + // yes! => validate it and update optimized structures. + impl_validateAndOptimize(); + + // <- SAFE +} + +/*----------------------------------------------- + 22.09.2003 14:27 +-----------------------------------------------*/ +void FilterCache::impl_loadSet(const css::uno::Reference< css::container::XNameAccess >& xConfig, + EItemType eType , + EReadOption eOption, + CacheItemList* pCache ) + throw(css::uno::Exception) +{ + // get access to the right configuration set + ::rtl::OUString sSetName; + switch(eType) + { + case E_TYPE : + sSetName = CFGSET_TYPES; + break; + + case E_FILTER : + sSetName = CFGSET_FILTERS; + break; + + case E_FRAMELOADER : + sSetName = CFGSET_FRAMELOADERS; + break; + + case E_CONTENTHANDLER : + sSetName = CFGSET_CONTENTHANDLERS; + break; + default: break; + } + + css::uno::Reference< css::container::XNameAccess > xSet; + css::uno::Sequence< ::rtl::OUString > lItems; + + try + { + css::uno::Any aVal = xConfig->getByName(sSetName); + if (!(aVal >>= xSet) || !xSet.is()) + { + ::rtl::OUStringBuffer sMsg(256); + sMsg.appendAscii("Could not open configuration set \""); + sMsg.append (sSetName ); + sMsg.appendAscii("\"." ); + throw css::uno::Exception( + sMsg.makeStringAndClear(), + css::uno::Reference< css::uno::XInterface >()); + } + lItems = xSet->getElementNames(); + } + catch(const css::uno::Exception& ex) + { + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + ex.Message); + } + + // get names of all existing sub items of this set + // step over it and fill internal cache structures. + + // But dont update optimized structures like e.g. hash + // for mapping extensions to its types! + + const ::rtl::OUString* pItems = lItems.getConstArray(); + sal_Int32 c = lItems.getLength(); + for (sal_Int32 i=0; i<c; ++i) + { + CacheItemList::iterator pItem = pCache->find(pItems[i]); + switch(eOption) + { + // a) read a standard set of properties only or read all + case E_READ_STANDARD : + case E_READ_ALL : + { + try + { + (*pCache)[pItems[i]] = impl_loadItem(xSet, eType, pItems[i], eOption); + } + catch(const css::uno::Exception& ex) + { + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + ex.Message); + } + } + break; + + // b) read optional properties only! + // All items must already exist inside our cache. + // But they must be updated. + case E_READ_UPDATE : + { + if (pItem == pCache->end()) + { + ::rtl::OUStringBuffer sMsg(256); + sMsg.appendAscii("item \"" ); + sMsg.append (pItems[i] ); + sMsg.appendAscii("\" not found for update!"); + throw css::uno::Exception(sMsg.makeStringAndClear() , + css::uno::Reference< css::uno::XInterface >()); + } + try + { + CacheItem aItem = impl_loadItem(xSet, eType, pItems[i], eOption); + pItem->second.update(aItem); + } + catch(const css::uno::Exception& ex) + { + throw css::document::CorruptedFilterConfigurationException( + MESSAGE_CORRUPTED_FILTERCONFIG, + css::uno::Reference< css::uno::XInterface >(), + ex.Message); + } + } + break; + default: break; + } + } +} + +/*----------------------------------------------- + 26.11.2003 12:49 +-----------------------------------------------*/ +void FilterCache::impl_readPatchUINames(const css::uno::Reference< css::container::XNameAccess >& xNode, + CacheItem& rItem) + throw(css::uno::Exception) +{ + static ::rtl::OUString FORMATNAME_VAR = ::rtl::OUString::createFromAscii("%productname%" ); + static ::rtl::OUString FORMATVERSION_VAR = ::rtl::OUString::createFromAscii("%formatversion%"); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + ::rtl::OUString sFormatName = m_sFormatName ; + ::rtl::OUString sFormatVersion = m_sFormatVersion; + ::rtl::OUString sActLocale = m_sActLocale ; + aLock.clear(); + // <- SAFE ---------------------------------- + + css::uno::Any aVal = xNode->getByName(PROPNAME_UINAME); + css::uno::Reference< css::container::XNameAccess > xUIName; + if (!(aVal >>= xUIName) && !xUIName.is()) + return; + + const ::comphelper::SequenceAsVector< ::rtl::OUString > lLocales(xUIName->getElementNames()); + ::comphelper::SequenceAsVector< ::rtl::OUString >::const_iterator pLocale ; + ::comphelper::SequenceAsHashMap lUINames; + + // patch %PRODUCTNAME and %FORMATNAME + for ( pLocale = lLocales.begin(); + pLocale != lLocales.end() ; + ++pLocale ) + { + const ::rtl::OUString& sLocale = *pLocale; + + ::rtl::OUString sValue; + xUIName->getByName(sLocale) >>= sValue; + + // replace %productname% + sal_Int32 nIndex = sValue.indexOf(FORMATNAME_VAR); + while(nIndex != -1) + { + sValue = sValue.replaceAt(nIndex, FORMATNAME_VAR.getLength(), sFormatName); + nIndex = sValue.indexOf(FORMATNAME_VAR, nIndex); + } + // replace %formatversion% + nIndex = sValue.indexOf(FORMATVERSION_VAR); + while(nIndex != -1) + { + sValue = sValue.replaceAt(nIndex, FORMATVERSION_VAR.getLength(), sFormatVersion); + nIndex = sValue.indexOf(FORMATVERSION_VAR, nIndex); + } + + lUINames[sLocale] <<= sValue; + } + + aVal <<= lUINames.getAsConstPropertyValueList(); + rItem[PROPNAME_UINAMES] = aVal; + + // find right UIName for current office locale + // Use fallbacks too! + pLocale = ::comphelper::Locale::getFallback(lLocales, sActLocale); + if (pLocale == lLocales.end()) + { + #if OSL_DEBUG_LEVEL > 0 + ::rtl::OUString sName = rItem.getUnpackedValueOrDefault(PROPNAME_NAME, ::rtl::OUString()); + + ::rtl::OUStringBuffer sMsg(256); + sMsg.appendAscii("Fallback scenario for filter or type '" ); + sMsg.append (sName ); + sMsg.appendAscii("' and locale '" ); + sMsg.append (sActLocale ); + sMsg.appendAscii("' failed. Please check your filter configuration."); + + OSL_ENSURE(sal_False, _FILTER_CONFIG_TO_ASCII_(sMsg.makeStringAndClear())); + #endif + return; + } + + const ::rtl::OUString& sLocale = *pLocale; + ::comphelper::SequenceAsHashMap::const_iterator pUIName = lUINames.find(sLocale); + if (pUIName != lUINames.end()) + rItem[PROPNAME_UINAME] = pUIName->second; +} + +/*----------------------------------------------- + 26.11.2003 12:56 +-----------------------------------------------*/ +void FilterCache::impl_savePatchUINames(const css::uno::Reference< css::container::XNameReplace >& xNode, + const CacheItem& rItem) + throw(css::uno::Exception) +{ + css::uno::Reference< css::container::XNameContainer > xAdd (xNode, css::uno::UNO_QUERY); + css::uno::Reference< css::container::XNameAccess > xCheck(xNode, css::uno::UNO_QUERY); + + css::uno::Sequence< css::beans::PropertyValue > lUINames = rItem.getUnpackedValueOrDefault(PROPNAME_UINAMES, css::uno::Sequence< css::beans::PropertyValue >()); + sal_Int32 c = lUINames.getLength(); + const css::beans::PropertyValue* pUINames = lUINames.getConstArray(); + + for (sal_Int32 i=0; i<c; ++i) + { + if (xCheck->hasByName(pUINames[i].Name)) + xNode->replaceByName(pUINames[i].Name, pUINames[i].Value); + else + xAdd->insertByName(pUINames[i].Name, pUINames[i].Value); + } +} + +/*----------------------------------------------- + 29.10.2003 13:17 + TODO + clarify, how the real problem behind the + wrong constructed CacheItem instance (which + will force a crash during destruction) + can be solved ... +-----------------------------------------------*/ +CacheItem FilterCache::impl_loadItem(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType , + const ::rtl::OUString& sItem , + EReadOption eOption) + throw(css::uno::Exception) +{ + // try to get an API object, which points directly to the + // requested item. If it fail an exception should occure and + // break this operation. Of course returned API object must be + // checked too. + css::uno::Reference< css::container::XNameAccess > xItem; + #ifdef WORKAROUND_EXCEPTION_PROBLEM + try + { + #endif + css::uno::Any aVal = xSet->getByName(sItem); + if (!(aVal >>= xItem) || !xItem.is()) + { + ::rtl::OUStringBuffer sMsg(256); + sMsg.appendAscii("found corrupted item \""); + sMsg.append (sItem ); + sMsg.appendAscii("\"." ); + throw css::uno::Exception(sMsg.makeStringAndClear() , + css::uno::Reference< css::uno::XInterface >()); + } + #ifdef WORKAROUND_EXCEPTION_PROBLEM + } + catch(const css::container::NoSuchElementException&) + { + throw; + } + #endif + + // The internal name of an item must(!) be part of the property + // set too. Of course its already used as key into the e.g. outside + // used hash map ... but some of our API methods provide + // this property set as result only. But the user of this CacheItem + // should know, which value the key names has :-) ITS IMPORTANT! + CacheItem aItem; + aItem[PROPNAME_NAME] = css::uno::makeAny(sItem); + switch(eType) + { + //--------------------------------------- + case E_TYPE : + { + // read standard properties of a type + if ( + (eOption == E_READ_STANDARD) || + (eOption == E_READ_ALL ) + ) + { + aItem[PROPNAME_PREFERREDFILTER] = xItem->getByName(PROPNAME_PREFERREDFILTER); + aItem[PROPNAME_DETECTSERVICE ] = xItem->getByName(PROPNAME_DETECTSERVICE ); + aItem[PROPNAME_URLPATTERN ] = xItem->getByName(PROPNAME_URLPATTERN ); + aItem[PROPNAME_EXTENSIONS ] = xItem->getByName(PROPNAME_EXTENSIONS ); + aItem[PROPNAME_PREFERRED ] = xItem->getByName(PROPNAME_PREFERRED ); + aItem[PROPNAME_CLIPBOARDFORMAT] = xItem->getByName(PROPNAME_CLIPBOARDFORMAT); + } + // read optional properties of a type + // no else here! Is an additional switch ... + if ( + (eOption == E_READ_UPDATE) || + (eOption == E_READ_ALL ) + ) + { + aItem[PROPNAME_MEDIATYPE ] = xItem->getByName(PROPNAME_MEDIATYPE ); + impl_readPatchUINames(xItem, aItem); + } + } + break; + + //--------------------------------------- + case E_FILTER : + { + // read standard properties of a filter + if ( + (eOption == E_READ_STANDARD) || + (eOption == E_READ_ALL ) + ) + { + aItem[PROPNAME_TYPE ] = xItem->getByName(PROPNAME_TYPE ); + aItem[PROPNAME_FILEFORMATVERSION] = xItem->getByName(PROPNAME_FILEFORMATVERSION); + aItem[PROPNAME_UICOMPONENT ] = xItem->getByName(PROPNAME_UICOMPONENT ); + aItem[PROPNAME_FILTERSERVICE ] = xItem->getByName(PROPNAME_FILTERSERVICE ); + aItem[PROPNAME_DOCUMENTSERVICE ] = xItem->getByName(PROPNAME_DOCUMENTSERVICE ); + + // special handling for flags! Convert it from a list of names to its + // int representation ... + css::uno::Sequence< ::rtl::OUString > lFlagNames; + if (xItem->getByName(PROPNAME_FLAGS) >>= lFlagNames) + aItem[PROPNAME_FLAGS] <<= FilterCache::impl_convertFlagNames2FlagField(lFlagNames); + } + // read optional properties of a filter + // no else here! Is an additional switch ... + if ( + (eOption == E_READ_UPDATE) || + (eOption == E_READ_ALL ) + ) + { + aItem[PROPNAME_USERDATA ] = xItem->getByName(PROPNAME_USERDATA ); + aItem[PROPNAME_TEMPLATENAME] = xItem->getByName(PROPNAME_TEMPLATENAME); +//TODO remove it if moving of filter uinames to type uinames +// will be finished realy +#ifdef AS_ENABLE_FILTER_UINAMES + impl_readPatchUINames(xItem, aItem); +#endif // AS_ENABLE_FILTER_UINAMES + } + } + break; + + //--------------------------------------- + case E_FRAMELOADER : + case E_CONTENTHANDLER : + { + aItem[PROPNAME_TYPES] = xItem->getByName(PROPNAME_TYPES); + } + break; + default: break; + } + + return aItem; +} + +/*----------------------------------------------- + 27.10.2003 08:47 +-----------------------------------------------*/ +CacheItemList::iterator FilterCache::impl_loadItemOnDemand( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + CacheItemList* pList = 0; + css::uno::Reference< css::uno::XInterface > xConfig ; + ::rtl::OUString sSet ; + + switch(eType) + { + case E_TYPE : + { + pList = &m_lTypes; + xConfig = impl_openConfig(E_PROVIDER_TYPES); + sSet = CFGSET_TYPES; + } + break; + + case E_FILTER : + { + pList = &m_lFilters; + xConfig = impl_openConfig(E_PROVIDER_FILTERS); + sSet = CFGSET_FILTERS; + } + break; + + case E_FRAMELOADER : + { + pList = &m_lFrameLoaders; + xConfig = impl_openConfig(E_PROVIDER_OTHERS); + sSet = CFGSET_FRAMELOADERS; + } + break; + + case E_CONTENTHANDLER : + { + pList = &m_lContentHandlers; + xConfig = impl_openConfig(E_PROVIDER_OTHERS); + sSet = CFGSET_CONTENTHANDLERS; + } + break; + + case E_DETECTSERVICE : + { + OSL_ENSURE(sal_False, "Cant load detect services on demand. Who use this unsupported feature?"); + } + break; + } + + css::uno::Reference< css::container::XNameAccess > xRoot(xConfig, css::uno::UNO_QUERY_THROW); + css::uno::Reference< css::container::XNameAccess > xSet ; + xRoot->getByName(sSet) >>= xSet; + + CacheItemList::iterator pItemInCache = pList->find(sItem); + sal_Bool bItemInConfig = xSet->hasByName(sItem); + + if (bItemInConfig) + { + CacheItem aItem; + CacheItem::iterator pDbgTest = aItem.find(PROPNAME_NAME); + aItem = impl_loadItem(xSet, eType, sItem, E_READ_ALL); + (*pList)[sItem] = aItem; + _FILTER_CONFIG_LOG_2_("impl_loadItemOnDemand(%d, \"%s\") ... OK", (int)eType, _FILTER_CONFIG_TO_ASCII_(sItem).getStr()) + } + else + { + if (pItemInCache != pList->end()) + pList->erase(pItemInCache); + // OK - this item does not exists inside configuration. + // And we already updated our internal cache. + // But the outside code needs this NoSuchElementException + // to know, that this item does notexists. + // Nobody checks the iterator! + throw css::container::NoSuchElementException(); + } + + return pList->find(sItem); +} + +/*----------------------------------------------- + 20.10.2003 09:38 +-----------------------------------------------*/ +void FilterCache::impl_saveItem(const css::uno::Reference< css::container::XNameReplace >& xItem, + EItemType eType, + const CacheItem& aItem) + throw(css::uno::Exception) +{ + CacheItem::const_iterator pIt; + switch(eType) + { + //--------------------------------------- + case E_TYPE : + { + pIt = aItem.find(PROPNAME_PREFERREDFILTER); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_PREFERREDFILTER, pIt->second); + pIt = aItem.find(PROPNAME_DETECTSERVICE); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_DETECTSERVICE, pIt->second); + pIt = aItem.find(PROPNAME_URLPATTERN); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_URLPATTERN, pIt->second); + pIt = aItem.find(PROPNAME_EXTENSIONS); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_EXTENSIONS, pIt->second); + pIt = aItem.find(PROPNAME_PREFERRED); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_PREFERRED, pIt->second); + pIt = aItem.find(PROPNAME_MEDIATYPE); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_MEDIATYPE, pIt->second); + pIt = aItem.find(PROPNAME_CLIPBOARDFORMAT); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_CLIPBOARDFORMAT, pIt->second); + + css::uno::Reference< css::container::XNameReplace > xUIName; + xItem->getByName(PROPNAME_UINAME) >>= xUIName; + impl_savePatchUINames(xUIName, aItem); + } + break; + + //--------------------------------------- + case E_FILTER : + { + pIt = aItem.find(PROPNAME_TYPE); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_TYPE, pIt->second); + pIt = aItem.find(PROPNAME_FILEFORMATVERSION); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_FILEFORMATVERSION, pIt->second); + pIt = aItem.find(PROPNAME_UICOMPONENT); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_UICOMPONENT, pIt->second); + pIt = aItem.find(PROPNAME_FILTERSERVICE); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_FILTERSERVICE, pIt->second); + pIt = aItem.find(PROPNAME_DOCUMENTSERVICE); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_DOCUMENTSERVICE, pIt->second); + pIt = aItem.find(PROPNAME_USERDATA); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_USERDATA, pIt->second); + pIt = aItem.find(PROPNAME_TEMPLATENAME); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_TEMPLATENAME, pIt->second); + + // special handling for flags! Convert it from an integer flag field back + // to a list of names ... + // But note: because we work directly on a reference to the cache item, + // its not allowd to change the value here. We must work on a copy! + sal_Int32 nFlags = 0; + pIt = aItem.find(PROPNAME_FLAGS); + if (pIt != aItem.end()) + { + pIt->second >>= nFlags; + css::uno::Any aFlagNameList; + aFlagNameList <<= FilterCache::impl_convertFlagField2FlagNames(nFlags); + xItem->replaceByName(PROPNAME_FLAGS, aFlagNameList); + } + +//TODO remove it if moving of filter uinames to type uinames +// will be finished realy +#ifdef AS_ENABLE_FILTER_UINAMES + css::uno::Reference< css::container::XNameReplace > xUIName; + xItem->getByName(PROPNAME_UINAME) >>= xUIName; + impl_savePatchUINames(xUIName, aItem); +#endif // AS_ENABLE_FILTER_UINAMES + } + break; + + //--------------------------------------- + case E_FRAMELOADER : + case E_CONTENTHANDLER : + { + pIt = aItem.find(PROPNAME_TYPES); + if (pIt != aItem.end()) + xItem->replaceByName(PROPNAME_TYPES, pIt->second); + } + break; + default: break; + } +} + +/*----------------------------------------------- + 20.10.2003 09:45 + static! => no locks neccessary +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > FilterCache::impl_convertFlagField2FlagNames(sal_Int32 nFlags) +{ + OUStringList lFlagNames; + + if ((nFlags & FLAGVAL_3RDPARTYFILTER ) == FLAGVAL_3RDPARTYFILTER ) lFlagNames.push_back(FLAGNAME_3RDPARTYFILTER ); + if ((nFlags & FLAGVAL_ALIEN ) == FLAGVAL_ALIEN ) lFlagNames.push_back(FLAGNAME_ALIEN ); + if ((nFlags & FLAGVAL_ASYNCHRON ) == FLAGVAL_ASYNCHRON ) lFlagNames.push_back(FLAGNAME_ASYNCHRON ); + if ((nFlags & FLAGVAL_BROWSERPREFERRED ) == FLAGVAL_BROWSERPREFERRED ) lFlagNames.push_back(FLAGNAME_BROWSERPREFERRED ); + if ((nFlags & FLAGVAL_CONSULTSERVICE ) == FLAGVAL_CONSULTSERVICE ) lFlagNames.push_back(FLAGNAME_CONSULTSERVICE ); + if ((nFlags & FLAGVAL_DEFAULT ) == FLAGVAL_DEFAULT ) lFlagNames.push_back(FLAGNAME_DEFAULT ); + if ((nFlags & FLAGVAL_ENCRYPTION ) == FLAGVAL_ENCRYPTION ) lFlagNames.push_back(FLAGNAME_ENCRYPTION ); + if ((nFlags & FLAGVAL_EXPORT ) == FLAGVAL_EXPORT ) lFlagNames.push_back(FLAGNAME_EXPORT ); + if ((nFlags & FLAGVAL_IMPORT ) == FLAGVAL_IMPORT ) lFlagNames.push_back(FLAGNAME_IMPORT ); + if ((nFlags & FLAGVAL_INTERNAL ) == FLAGVAL_INTERNAL ) lFlagNames.push_back(FLAGNAME_INTERNAL ); + if ((nFlags & FLAGVAL_NOTINCHOOSER ) == FLAGVAL_NOTINCHOOSER ) lFlagNames.push_back(FLAGNAME_NOTINCHOOSER ); + if ((nFlags & FLAGVAL_NOTINFILEDIALOG ) == FLAGVAL_NOTINFILEDIALOG ) lFlagNames.push_back(FLAGNAME_NOTINFILEDIALOG ); + if ((nFlags & FLAGVAL_NOTINSTALLED ) == FLAGVAL_NOTINSTALLED ) lFlagNames.push_back(FLAGNAME_NOTINSTALLED ); + if ((nFlags & FLAGVAL_OWN ) == FLAGVAL_OWN ) lFlagNames.push_back(FLAGNAME_OWN ); + if ((nFlags & FLAGVAL_PACKED ) == FLAGVAL_PACKED ) lFlagNames.push_back(FLAGNAME_PACKED ); + if ((nFlags & FLAGVAL_PASSWORDTOMODIFY ) == FLAGVAL_PASSWORDTOMODIFY ) lFlagNames.push_back(FLAGNAME_PASSWORDTOMODIFY ); + if ((nFlags & FLAGVAL_PREFERRED ) == FLAGVAL_PREFERRED ) lFlagNames.push_back(FLAGNAME_PREFERRED ); + if ((nFlags & FLAGVAL_READONLY ) == FLAGVAL_READONLY ) lFlagNames.push_back(FLAGNAME_READONLY ); + if ((nFlags & FLAGVAL_SILENTEXPORT ) == FLAGVAL_SILENTEXPORT ) lFlagNames.push_back(FLAGNAME_SILENTEXPORT ); + if ((nFlags & FLAGVAL_SUPPORTSSELECTION) == FLAGVAL_SUPPORTSSELECTION) lFlagNames.push_back(FLAGNAME_SUPPORTSSELECTION); + if ((nFlags & FLAGVAL_TEMPLATE ) == FLAGVAL_TEMPLATE ) lFlagNames.push_back(FLAGNAME_TEMPLATE ); + if ((nFlags & FLAGVAL_TEMPLATEPATH ) == FLAGVAL_TEMPLATEPATH ) lFlagNames.push_back(FLAGNAME_TEMPLATEPATH ); + if ((nFlags & FLAGVAL_USESOPTIONS ) == FLAGVAL_USESOPTIONS ) lFlagNames.push_back(FLAGNAME_USESOPTIONS ); + if ((nFlags & FLAGVAL_COMBINED ) == FLAGVAL_COMBINED ) lFlagNames.push_back(FLAGNAME_COMBINED ); + + return lFlagNames.getAsConstList(); +} + +/*----------------------------------------------- + 27.06.2003 09:26 + static! => no locks neccessary +-----------------------------------------------*/ +sal_Int32 FilterCache::impl_convertFlagNames2FlagField(const css::uno::Sequence< ::rtl::OUString >& lNames) +{ + sal_Int32 nField = 0; + + const ::rtl::OUString* pNames = lNames.getConstArray(); + sal_Int32 c = lNames.getLength(); + for (sal_Int32 i=0; i<c; ++i) + { + if (pNames[i].equals(FLAGNAME_3RDPARTYFILTER)) + { + nField |= FLAGVAL_3RDPARTYFILTER; + continue; + } + if (pNames[i].equals(FLAGNAME_ALIEN)) + { + nField |= FLAGVAL_ALIEN; + continue; + } + if (pNames[i].equals(FLAGNAME_ASYNCHRON)) + { + nField |= FLAGVAL_ASYNCHRON; + continue; + } + if (pNames[i].equals(FLAGNAME_BROWSERPREFERRED)) + { + nField |= FLAGVAL_BROWSERPREFERRED; + continue; + } + if (pNames[i].equals(FLAGNAME_CONSULTSERVICE)) + { + nField |= FLAGVAL_CONSULTSERVICE; + continue; + } + if (pNames[i].equals(FLAGNAME_DEFAULT)) + { + nField |= FLAGVAL_DEFAULT; + continue; + } + if (pNames[i].equals(FLAGNAME_ENCRYPTION)) + { + nField |= FLAGVAL_ENCRYPTION; + continue; + } + if (pNames[i].equals(FLAGNAME_EXPORT)) + { + nField |= FLAGVAL_EXPORT; + continue; + } + if (pNames[i].equals(FLAGNAME_IMPORT)) + { + nField |= FLAGVAL_IMPORT; + continue; + } + if (pNames[i].equals(FLAGNAME_INTERNAL)) + { + nField |= FLAGVAL_INTERNAL; + continue; + } + if (pNames[i].equals(FLAGNAME_NOTINCHOOSER)) + { + nField |= FLAGVAL_NOTINCHOOSER; + continue; + } + if (pNames[i].equals(FLAGNAME_NOTINFILEDIALOG)) + { + nField |= FLAGVAL_NOTINFILEDIALOG; + continue; + } + if (pNames[i].equals(FLAGNAME_NOTINSTALLED)) + { + nField |= FLAGVAL_NOTINSTALLED; + continue; + } + if (pNames[i].equals(FLAGNAME_OWN)) + { + nField |= FLAGVAL_OWN; + continue; + } + if (pNames[i].equals(FLAGNAME_PACKED)) + { + nField |= FLAGVAL_PACKED; + continue; + } + if (pNames[i].equals(FLAGNAME_PASSWORDTOMODIFY)) + { + nField |= FLAGVAL_PASSWORDTOMODIFY; + continue; + } + if (pNames[i].equals(FLAGNAME_PREFERRED)) + { + nField |= FLAGVAL_PREFERRED; + continue; + } + if (pNames[i].equals(FLAGNAME_READONLY)) + { + nField |= FLAGVAL_READONLY; + continue; + } + if (pNames[i].equals(FLAGNAME_SILENTEXPORT)) + { + nField |= FLAGVAL_SILENTEXPORT; + continue; + } + if (pNames[i].equals(FLAGNAME_SUPPORTSSELECTION)) + { + nField |= FLAGVAL_SUPPORTSSELECTION; + continue; + } + if (pNames[i].equals(FLAGNAME_TEMPLATE)) + { + nField |= FLAGVAL_TEMPLATE; + continue; + } + if (pNames[i].equals(FLAGNAME_TEMPLATEPATH)) + { + nField |= FLAGVAL_TEMPLATEPATH; + continue; + } + if (pNames[i].equals(FLAGNAME_USESOPTIONS)) + { + nField |= FLAGVAL_USESOPTIONS; + continue; + } + if (pNames[i].equals(FLAGNAME_COMBINED)) + { + nField |= FLAGVAL_COMBINED; + continue; + } + } + + return nField; +} + +/*----------------------------------------------- + 12.02.2004 08:40 +-----------------------------------------------*/ +void FilterCache::impl_interpretDataVal4Type(const ::rtl::OUString& sValue, + sal_Int32 nProp , + CacheItem& rItem ) +{ + switch(nProp) + { + // Preferred + case 0: { + if (sValue.toInt32() == 1) + rItem[PROPNAME_PREFERRED] = css::uno::makeAny(sal_True); + else + rItem[PROPNAME_PREFERRED] = css::uno::makeAny(sal_False); + } + break; + // MediaType + case 1: rItem[PROPNAME_MEDIATYPE] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // ClipboardFormat + case 2: rItem[PROPNAME_CLIPBOARDFORMAT] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // URLPattern + case 3: rItem[PROPNAME_URLPATTERN] <<= impl_tokenizeString(sValue, (sal_Unicode)';').getAsConstList(); + break; + // Extensions + case 4: rItem[PROPNAME_EXTENSIONS] <<= impl_tokenizeString(sValue, (sal_Unicode)';').getAsConstList(); + break; + } +} + +/*----------------------------------------------- + 12.02.2004 08:50 +-----------------------------------------------*/ +void FilterCache::impl_interpretDataVal4Filter(const ::rtl::OUString& sValue, + sal_Int32 nProp , + CacheItem& rItem ) +{ + switch(nProp) + { + // Order + case 0: { + sal_Int32 nOrder = sValue.toInt32(); + if (nOrder > 0) + { + OSL_ENSURE(sal_False, "FilterCache::impl_interpretDataVal4Filter()\nCant move Order value from filter to type on demand!\n"); + _FILTER_CONFIG_LOG_2_("impl_interpretDataVal4Filter(%d, \"%s\") ... OK", (int)eType, _FILTER_CONFIG_TO_ASCII_(rItem).getStr()) + } + } + break; + // Type + case 1: rItem[PROPNAME_TYPE] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // DocumentService + case 2: rItem[PROPNAME_DOCUMENTSERVICE] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // FilterService + case 3: rItem[PROPNAME_FILTERSERVICE] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // Flags + case 4: rItem[PROPNAME_FLAGS] <<= sValue.toInt32(); + break; + // UserData + case 5: rItem[PROPNAME_USERDATA] <<= impl_tokenizeString(sValue, (sal_Unicode)';').getAsConstList(); + break; + // FileFormatVersion + case 6: rItem[PROPNAME_FILEFORMATVERSION] <<= sValue.toInt32(); + break; + // TemplateName + case 7: rItem[PROPNAME_TEMPLATENAME] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + // [optional!] UIComponent + case 8: rItem[PROPNAME_UICOMPONENT] <<= ::rtl::Uri::decode(sValue, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); + break; + } +} + +/*----------------------------------------------- + 12.02.2004 08:30 + TODO work on a cache copy first, which can be flushed afterwards + That would be usefully to gurantee a consistent cache. +-----------------------------------------------*/ +void FilterCache::impl_readOldFormat() + throw(css::uno::Exception) +{ + static ::rtl::OUString TYPES_SET = ::rtl::OUString::createFromAscii("Types" ); + static ::rtl::OUString FILTER_SET = ::rtl::OUString::createFromAscii("Filters"); + + // Attention: Opening/Reading of this old configuration format has to be handled gracefully. + // Its optional and shouldnt disturb our normal work! + // E.g. we must check, if the package exists ... + + css::uno::Reference< css::container::XNameAccess > xCfg; + try + { + css::uno::Reference< css::uno::XInterface > xInt = impl_openConfig(E_PROVIDER_OLD); + xCfg = css::uno::Reference< css::container::XNameAccess >(xInt, css::uno::UNO_QUERY_THROW); + } + /* corrupt filter addon ? because it's external (optional) code .. we can ignore it. Addon wont work then ... + but that seams to be acceptable. + see #139088# for further informations + */ + catch(const css::uno::Exception&) + { return; } + + // May be there is no type set ... + if (xCfg->hasByName(TYPES_SET)) + { + css::uno::Reference< css::container::XNameAccess > xSet; + xCfg->getByName(TYPES_SET) >>= xSet; + const css::uno::Sequence< ::rtl::OUString > lItems = xSet->getElementNames(); + const ::rtl::OUString* pItems = lItems.getConstArray(); + for (sal_Int32 i=0; i<lItems.getLength(); ++i) + m_lTypes[pItems[i]] = impl_readOldItem(xSet, E_TYPE, pItems[i]); + } + + // May be there is no filter set ... + if (xCfg->hasByName(FILTER_SET)) + { + css::uno::Reference< css::container::XNameAccess > xSet; + xCfg->getByName(FILTER_SET) >>= xSet; + const css::uno::Sequence< ::rtl::OUString > lItems = xSet->getElementNames(); + const ::rtl::OUString* pItems = lItems.getConstArray(); + for (sal_Int32 i=0; i<lItems.getLength(); ++i) + m_lFilters[pItems[i]] = impl_readOldItem(xSet, E_FILTER, pItems[i]); + } +} + +/*----------------------------------------------- + 12.02.2004 08:30 +-----------------------------------------------*/ +CacheItem FilterCache::impl_readOldItem(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception) +{ + css::uno::Reference< css::container::XNameAccess > xItem; + xSet->getByName(sItem) >>= xItem; + if (!xItem.is()) + throw css::uno::Exception( + ::rtl::OUString::createFromAscii("Cant read old item."), + css::uno::Reference< css::uno::XInterface >()); + + CacheItem aItem; + aItem[PROPNAME_NAME] <<= sItem; + + // Installed flag ... + // Isnt used any longer! + + // UIName + impl_readPatchUINames(xItem, aItem); + + // Data + ::rtl::OUString sData; + OUStringList lData; + xItem->getByName(::rtl::OUString::createFromAscii("Data")) >>= sData; + lData = impl_tokenizeString(sData, (sal_Unicode)','); + if ( + (!sData.getLength()) || + (lData.size()<1 ) + ) + { + throw css::uno::Exception( + ::rtl::OUString::createFromAscii("Cant read old item property DATA."), + css::uno::Reference< css::uno::XInterface >()); + } + + sal_Int32 nProp = 0; + for (OUStringList::const_iterator pProp = lData.begin(); + pProp != lData.end() ; + ++pProp ) + { + const ::rtl::OUString& sProp = *pProp; + switch(eType) + { + case E_TYPE : + impl_interpretDataVal4Type(sProp, nProp, aItem); + break; + + case E_FILTER : + impl_interpretDataVal4Filter(sProp, nProp, aItem); + break; + default: break; + } + ++nProp; + } + + return aItem; +} + +/*----------------------------------------------- + 12.02.2004 08:15 +-----------------------------------------------*/ +OUStringList FilterCache::impl_tokenizeString(const ::rtl::OUString& sData , + sal_Unicode cSeperator) +{ + OUStringList lData ; + sal_Int32 nToken = 0; + do + { + ::rtl::OUString sToken = sData.getToken(0, cSeperator, nToken); + lData.push_back(sToken); + } + while(nToken >= 0); + return lData; +} + +#if OSL_DEBUG_LEVEL > 0 +/*-----------------------------------------------*/ +::rtl::OUString FilterCache::impl_searchFrameLoaderForType(const ::rtl::OUString& sType) const +{ + CacheItemList::const_iterator pIt; + for ( pIt = m_lFrameLoaders.begin(); + pIt != m_lFrameLoaders.end() ; + ++pIt ) + { + const ::rtl::OUString& sItem = pIt->first; + ::comphelper::SequenceAsHashMap lProps(pIt->second); + OUStringList lTypes(lProps[PROPNAME_TYPES]); + + if (::std::find(lTypes.begin(), lTypes.end(), sType) != lTypes.end()) + return sItem; + } + + return ::rtl::OUString(); +} + +/*-----------------------------------------------*/ +::rtl::OUString FilterCache::impl_searchContentHandlerForType(const ::rtl::OUString& sType) const +{ + CacheItemList::const_iterator pIt; + for ( pIt = m_lContentHandlers.begin(); + pIt != m_lContentHandlers.end() ; + ++pIt ) + { + const ::rtl::OUString& sItem = pIt->first; + ::comphelper::SequenceAsHashMap lProps(pIt->second); + OUStringList lTypes(lProps[PROPNAME_TYPES]); + + if (::std::find(lTypes.begin(), lTypes.end(), sType) != lTypes.end()) + return sItem; + } + + return ::rtl::OUString(); +} +#endif + +/*-----------------------------------------------*/ +sal_Bool FilterCache::impl_isModuleInstalled(const ::rtl::OUString& sModule) +{ + css::uno::Reference< css::container::XNameAccess > xCfg; + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + if (! m_xModuleCfg.is()) + { + m_xModuleCfg = css::uno::Reference< css::container::XNameAccess >( + ::comphelper::ConfigurationHelper::openConfig( + m_xSMGR, + ::rtl::OUString::createFromAscii("org.openoffice.Setup/Office/Factories"), + ::comphelper::ConfigurationHelper::E_READONLY), + css::uno::UNO_QUERY_THROW); + } + + xCfg = m_xModuleCfg; + aLock.clear(); + // <- SAFE + + if (xCfg.is()) + return xCfg->hasByName(sModule); + + return sal_False; +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/filtercache.hxx b/filter/source/config/cache/filtercache.hxx new file mode 100644 index 000000000000..0c0e34b2783b --- /dev/null +++ b/filter/source/config/cache/filtercache.hxx @@ -0,0 +1,1066 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_FILTERCACHE_HXX_ +#define __FILTER_CONFIG_FILTERCACHE_HXX_ + +//_______________________________________________ +// includes + +#include "cacheitem.hxx" +#include <com/sun/star/uno/Exception.hpp> +#include <com/sun/star/util/URL.hpp> +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/uno/XInterface.hpp> +#include <com/sun/star/container/XNameAccess.hpp> +#include <com/sun/star/container/XNameContainer.hpp> +#include <com/sun/star/container/XNameReplace.hpp> +#include <com/sun/star/util/ChangesEvent.hpp> +#include <com/sun/star/uno/Reference.h> +#include <com/sun/star/uno/Any.h> +#include <rtl/ustring.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements a cache, which contains all + elements of our filter and type detection + configuration. + + @descr The cache itself is threadsafe implemented. + Because it should be used as a singleton only. + To do so please use reference mechanism as wrapper + around this FilterCache class. + + @attention Because we use a trick to get a full initialized + mutex lock during initialization time (means during + the constructor runs), the base class FilterCacheLock + must be the first of all declared one! + Further we make it public. So any user of this class + can lock us from outside too. + */ +class FilterCache : public BaseLock +{ + //------------------------------------------- + // public types + + public: + + //--------------------------------------- + + /** @short identify the type of a container item. + + @descr Because the cache interface is a generic one + every group of container items must be specified. + */ + enum EItemType + { + E_TYPE , + E_FILTER , + E_FRAMELOADER , + E_CONTENTHANDLER, + E_DETECTSERVICE + }; + + //--------------------------------------- + + /** @short indicates, which items already exists inside this cache + and which not. + + @descr This cache supports a 2-step load mechanism. + First only types (and only some special properties of every type!) + but no filters/frame loaders/content handlers will be readed. + That should be enough to work with this cache e.g. for loading + the first document. After this first document was loaded successfully, + a special "load-on-demand-thread" will be started to fill this cache + with ALL other informations, which was not readed before. + Thats the second step. All operations on top of this cache will be + blocked then. + */ + enum EFillState + { + E_CONTAINS_NOTHING = 0, + E_CONTAINS_STANDARD = 1, + E_CONTAINS_TYPES = 2, + E_CONTAINS_FILTERS = 4, + E_CONTAINS_DETECTSERVICES = 8, + E_CONTAINS_FRAMELOADERS = 16, + E_CONTAINS_CONTENTHANDLERS = 32, + E_CONTAINS_ALL = 63 // must be a combination of all excepting E_CONTAINS_NOTHING! Please update if items will be added or removed ... + }; + + //------------------------------------------- + // private types + + private: + + //--------------------------------------- + /** @short regulate, which properties of a configured item + will be readed. + + @descr To perform reading of all configuration items, + only standard properties will be handled. At a second + step all optional properties will be read and added to + our internal structures. Of course the combination of + both options can be used too, to get all properties + at the same time. + */ + enum EReadOption + { + E_READ_NOTHING = 0, + E_READ_STANDARD = 1, + E_READ_UPDATE = 2, + E_READ_ALL = 3 + }; + + //--------------------------------------- + /** @short indicates the state of a configuration set item. + + @descr Inside method flush we check: + <ul> + <li>if the item exists inside config layer but not inside our cache => REMOVED</li> + <li>if the item exists inside config layer and inside our cache => CHANGED</li> + <li>if the item does not exists inside config layer but inside our cache => ADDED.</li> + </ul> + */ + enum EItemFlushState + { + /// indicates an unchanged item (can occure e.g. if an item was added and(!) removed before it was flushed ... + E_ITEM_UNCHANGED = 0, + /// indicates an item, which exists inside config layer but not inside our own cache + E_ITEM_REMOVED = 1, + /// indicates an item, which exists inside config layer and inside our own cache + E_ITEM_CHANGED = 2, + /// indicates an item, which does not exists inside config layer but inside our own cache + E_ITEM_ADDED = 3 + }; + + //--------------------------------------- + /** TODO document me */ + enum EConfigProvider + { + E_PROVIDER_TYPES = 0, + E_PROVIDER_FILTERS = 1, + E_PROVIDER_OTHERS = 2, + E_PROVIDER_OLD = 3 + }; + + //------------------------------------------- + // member + + private: + + //--------------------------------------- + /** @short reference to an uno service manager, which can be used + to create own needed services. */ + mutable css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR; + + //--------------------------------------- + /** @short holds the used configuration provider alive, which + provides access to the list of types. */ + mutable css::uno::Reference< css::uno::XInterface > m_xConfigTypes; + + //--------------------------------------- + /** @short holds the used configuration provider alive, which + provides access to the list of filters. */ + mutable css::uno::Reference< css::uno::XInterface > m_xConfigFilters; + + //--------------------------------------- + /** @short holds the used configuration provider alive, which + provides access to the list of other values needed + by our type detection framework. */ + mutable css::uno::Reference< css::uno::XInterface > m_xConfigOthers; + + //--------------------------------------- + /** @short contains all loaded types with its properties. */ + mutable CacheItemList m_lTypes; + + //--------------------------------------- + /** @short contains all well known detect service with its properties. */ + mutable CacheItemList m_lDetectServices; + + //--------------------------------------- + /** @short contains all loaded filters with its properties. */ + mutable CacheItemList m_lFilters; + + //--------------------------------------- + /** @short contains all loaded frame loader with its properties. */ + mutable CacheItemList m_lFrameLoaders; + + //--------------------------------------- + /** @short contains all loaded content handler with its properties. */ + mutable CacheItemList m_lContentHandlers; + + //--------------------------------------- + /** @short optimize mapping of URL extensions to a type representation, + by using extensions as key and a list of internal + type names as value. */ + mutable CacheItemRegistration m_lExtensions2Types; + + //--------------------------------------- + /** @short optimize mapping of URL pattern to a type representation, + by using patterns as key and a list of internal + type names as value. */ + mutable CacheItemRegistration m_lURLPattern2Types; + + //--------------------------------------- + /** @short contains the current locale of the office and will be + used to work with localized configuration values. */ + ::rtl::OUString m_sActLocale; + + //--------------------------------------- + /** TODO */ + ::rtl::OUString m_sFormatName; + + //--------------------------------------- + /** TODO */ + ::rtl::OUString m_sFormatVersion; + + //--------------------------------------- + /** @short contains status, which cache items/properties + was already loaded from the underlying configuration. + + @descr This information can be used to detect missing + informations and load it on demand. + + @see EFillState + @see load() + */ + EFillState m_eFillState; + + //--------------------------------------- + /** TODO document me ... */ + OUStringList m_lChangedTypes; + OUStringList m_lChangedFilters; + OUStringList m_lChangedDetectServices; + OUStringList m_lChangedFrameLoaders; + OUStringList m_lChangedContentHandlers; + + //--------------------------------------- + /// readonly acccess to the module configuration of OOo + css::uno::Reference< css::container::XNameAccess > m_xModuleCfg; + + //------------------------------------------- + // interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor + + @descr Its not allowed to do anything here ... + especialy is forbidden to start operations, + which needs a FilterCache instance too! + Why? Because thie FilterCache instance will be + used as a singleton! And if during this ctor any + action related to this FilterCache singleton is + started ... a race will be the result. + + The first method after construction of a new + singleton reference should be "load()". There + a special fill state of this cache can be forced. + */ + FilterCache(); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~FilterCache(); + + //--------------------------------------- + + /** @short creates a copy of this container. + + @descr Such copy can be used then to modify items (add/change/remove) + without the risk to damage the original container. + After its changed data was flushed to the configuration it can be + removed. + + The original container will get these new data automaticly + because it listen for changes on the internal used configuration layer. + If the new data are needed immediatly inside the original container, + the method takeOver() can be used to copy all changes back. + The may be following notifications of the configuration will be superflous then. + But they cant be stopped ... + + All internal structures will be copied here. But the internal used + configuration (update) access wont be copied. The cloned instance contains + a different one. + + @note The cloned instance is created on the heap. The user of this instance + has to remove it later. + */ + virtual FilterCache* clone() const; + + //--------------------------------------- + + /** @short copy the cache content or rClone back to this instance. + */ + virtual void takeOver(const FilterCache& rClone); + + //--------------------------------------- + + /** @short force special fill state of this cache. + + @descr This method check if all requested items/properties already + exists. Only missing informations will be readed. + Otherwhise this method does nothing! + + This method must be called from every user of this cache + everytimes it need a filled cache. Normaly we load + only standard informations into this cache on startup. + After a few seconds we start a special thread, which + may fill this cache completely. But if somehwere outside + need a filled cache before ... it can run into trouble, + if this "load-on-demand" thread does not finished its work before. + This method "load(xxx)" synchronize such load-on-demand requests. + + Of course it would be possible to supress this special load thread + in general and start it manualy inside this load() request. + The outside code decide then, if and when this cache will be filled + with all available informations ... + + @param bByThread + indicates using of this method by our global "load-on-demand-thread". + Its an implementation detail! We use it to check, if this "load()" + request was forced e.g. by one of our derived service container (which need + it to full fill its own operations) or if it was forced by our own + "load-on-demand-thread", which tries to optimize our startup performance + and start this load() only in case the office startup was already finished! + + @throw An exception if the cache could not be filled realy + or seems to be invalid afterwards. But there is no reaction + at all if this method does nothing inside, because the cache + is already full filled! + */ + virtual void load(EFillState eRequired , + sal_Bool bByThread = sal_False) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short return the current fill state of this cache. + + @descr This information can be used e.g. to start + a search on top of this cache with a minimum on + informations ... and do it again, if some other + cache items seems to be available after calling of "loadAll()" + on this cache and first search does not had any valid results. + + @return TRUE if the required fill state exists for this cache; FALSE + otherwise. + */ + virtual sal_Bool isFillState(EFillState eRequired) const + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short return a list of key names for items, which match + the specified criteria. + + @descr The returned key names can be used at another method "getItem()" + of this cache to get further informations about this item. + + @attention Please note: because this cache can be used inside multithreaded + environments, such returned key name can point to an already removed + item! Please be aware of some "NoSuchElementExceptions" if you try to + call any other method of this cache in relation to this key name. + + @param eType + specify the sub container of this cache, which should be used for + searching. see also EItemType. + + @param lIProps + specify the property set, which must exist at the searched items + as minimum. + + @param lEProps + specify the property set, which must not(!) exist at the searched items + as minimum. + + @return [OUStringList] + a list of key names, which identify items of the queried sub container. + May be an empty list. + + @throw [css::uno::Exception] + if some input parameter are wrong or the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual OUStringList getMatchingItemsByProps( EItemType eType , + const CacheItem& lIProps , + const CacheItem& lEProps = CacheItem()) const + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short indicates if the requested sub container + contains some items. + + @descr We dont provide any information about the count + of such items. Because we dont implement any index + based interface! The information "we have items or not" + must be enough for the outside code ... till somewhere + give us a good reason. :-) + + @param eType + specify the sub container of this cache, which should be used. + see also EItemType. + + @return [sal_Bool] + True, if the requested sub container contains some items; + False otherwhise. + + @throw [css::uno::Exception] + if some input parameter are wrong or the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual sal_Bool hasItems(EItemType eType) const + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short return a list of all key names, which represent + an item inside the specified sub container. + + @attention Please note: because this cache can be used inside multithreaded + environments, such returned key names can point to some already removed + items! Please be aware of some "NoSuchElementExceptions" if you try to + call any other method of this cache in relation to this key names. + + @param eType + specify the sub container of this cache, which should be used for + searching. see also EItemType. + + @return [OUStringList] + a list of key names, which can be used to access the item properties + using some other methods of this cache. + + @throw [css::uno::Exception] + if some input parameter are wrong or the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual OUStringList getItemNames(EItemType eType) const + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short check if the required item exist inside this container. + + @attention This method exists to supports some UNO container interfaces + only. (e.g. XNameAccess.hasByName()). But inside multithreaded + environments there is no guarantee, that this item still exists, if + its realy requested e.g. by calling getItem()! + Be aware of some NoSuchElementExistExceptions ... + + @param eType + specify the sub container of this cache, which should be used. + see also EItemType. + + @param sItem + the key name of the requested item inside the pecified sub container. + + @throw [css::uno::Exception] + if some input parameter are wrong or the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual sal_Bool hasItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short return an item, which match the specified type and name. + + @descr Because this cache can be used inside multithreaded environments + the caller must be aware of some exceptions - especialy a "NoSuchElementExcepotion". + May another thread already removed the required item before ... + + @param eType + specify the sub container of this cache, which should be used for + searching. see also EItemType. + + @param sItem + specify the requested item by its key name. + + @return [CacheItem] + the required item if it could be located ... + But we throw an exception if the required item does not exist! + + @throw [css::container::NoSuchElementException] + if the required item does not still exist. + + @throw [css::uno::Exception] + if some input parameter are wrong or the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual CacheItem getItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO document me ... + */ + virtual void removeItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO document me ... + */ + virtual void setItem( EItemType eType , + const ::rtl::OUString& sItem , + const CacheItem& aValue) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO document me ... + */ + virtual void refreshItem( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short add some implicit properties to the given + cache item reference. + + @descr Such properties can e.g. finalized or mandatory. + They are not persistent and not realy part of e.g. a + filter not. But they are attributes of a configuration + entry and can influence our container interface. + + @attention These properties are not part of the normal CacheItem + returned by the method getItem(). Because getItem() is + used internaly too but these specialized properties + are needed at our container services only. So these + function sets are different to allow different handling. + + @param eType + specify the sub container of this cache, which should be used for + searching. see also EItemType. + + @param sItem + specify the requested item by its key name. + + @param rItem + contains already the normal properties of this item, + and will be used as out parameter to add the implicit + attributes there. + + @throw [css::uno::Exception] + if an internal error occured. + Note: If the item is missing inside the underlying configuration + no exception will be thrown. In such case the item is marked as + finalized/mandatory automaticly + Reason: May be the item cames from the old configuration package and + was not migrated to the new one. So we cant provide write access + to such items ... + */ + virtual void addStatePropsToItem( EItemType eType, + const ::rtl::OUString& sItem, + CacheItem& rItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO document me + */ + virtual void removeStatePropsFromItem(CacheItem& aValue) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short force writing of all changes (which was made after + last flush was called) back to the configuration. + + @descr TODO + + @throw [css::uno::Exception] + if the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual void flush() + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short supports a flat type detection for given URL. + + @descr Because such detection works on our optimized internal + structures (e.g. mapping from extensions/pattern to type names), + it should be made inside this cache. + + @param aURL + URL of the content, which type should be detected. + Its already parsed and splitted into its differnt parts, + like e.g.: main, jump marks etcpp. + + @param rFlatTypes + used as [out] parameter to add all types, which match to the given + URL. Further an information is added for every type. It indicates, how + this type is related to the specified URL (means e.g. if it matches + by extension or URLPattern ...). + + @attention Please note: because this cache can be used inside multithreaded + environments, such returned key names can point to some already removed + items! Please be aware of some "NoSuchElementExceptions" if you try to + call any other method of this cache in relation to this key names. + + @throw [css::uno::Exception] + if the cache itself is not valid + any longer, because any operation before damage it. + */ + virtual void detectFlatForURL(const css::util::URL& aURL , + FlatDetection& rFlatTypes) const + throw(css::uno::Exception); + + //------------------------------------------- + // private helper + + private: + + //--------------------------------------- + + /** @short return a reference to one of our internal + sub container, which contains items of the + requested type. + + @param eType + specify, which sub container is needed outside. + + @return [CacheItemList&] + a reference(!) to the right sub container member. + + @throw [css::uno::Exception] + if the required list does not exist. + */ + CacheItemList& impl_getItemList(EItemType eType) const + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short return a valid configuration update access + to the underlying configuration package, which + is fix for this cache. + + @descr It checks first, if the internal member m_xConfig already + points to an open update access. If not - it opens a new one. + Doing so this method can be called everytimes a configuration + access is needed. + + @param eProvider + specify the needed configuration provider. + see EConfigProvider for further informations ... + + @attention If a configuration access was opened successfully + all neccessary listener connections will be established + too. So this cache will be informed about outside updates. + */ + css::uno::Reference< css::uno::XInterface > impl_openConfig(EConfigProvider eProvide) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short tries to open the requested configuration root + using the specified modi. + + @param sRoot + specify the configuration root, which should be opened. + + @param bReadOnly + enable/disable write access on the returned configuration + object. + + @param bLocalesMode + enable/disable special handling of localized configuratiom + items by the returned configuration object. + + @return A valid reference, if the configuration access could be opened + and initialized within the requested modes successfully; + a NULL reference otherwhise. + */ + css::uno::Reference< css::uno::XInterface > impl_createConfigAccess(const ::rtl::OUString& sRoot , + sal_Bool bReadOnly , + sal_Bool bLocalesMode); + + //--------------------------------------- + + /** @short reads the specified configuration key + and return its value. + + @descr The specified key must be an absolute configuration path, + which can be splitted into its package and relative path tokens. + + @attention Because this function might opens a new configuration + read access for reading one key value only, it should + be used in rare cases only. Its an easy way ... but an + expensive one. + + @param sDirectKey + the absolute configuration path, which should be readed. + + @return [css::uno::Any] + the value of the requested key. + Can be empty if an internal error occured or if the requested + key does not exists! + */ + css::uno::Any impl_getDirectCFGValue(const ::rtl::OUString& sDirectKey); + + //--------------------------------------- + + /** @short load the underlying configuration into this cache. + + @descr Which items should be readed can be regulate by the + parameter eRequiredState. That provides the possibility + to load standard values on startup only and update this + cache later on demand with all available informations. + + @param eRequiredState + indicates, which fill state this cache should have afterwards. + */ + void impl_load(EFillState eRequiredState) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short validate the whole cache and create + structures for optimized items access. + + @descr Wrong cache items will be removed automaticly. + Wrong dependencies will be corrected automaticly. + If something could not be repaired - an exception + is thrown. + Further some optmized structures will be created. + E.g.: a hash to map extensions to her types. + + @attention There is no exception, if the cache could be repaired + but contained wrong elements before! + + @throw [css::uno::Exception] + if cache is invalid and could not be repaired. + */ + void impl_validateAndOptimize() + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short register the specified item for the given type. + + @descr Because detect services, frame loader or content handler + are not listed inside the xml configuration as seperated + items (they are properties of any type entry!), this method update + the internal lists of such items. Thats neccessary to have + it accessible for our container interfaces of detect, frame loader + and content handler services. + + @param pList + points to a CacheItemList of this filter cache, where + this item registration should be updated or added. + + @param sItem + specify the detect service, frame loader or content handler, + which should be registered for the given type. + + @param sType + contains the internal type name, where the item should be registered for. + + @throw [css::uno::Exception] + If registration failed by any reason. + That does not include double registrations! + */ + void impl_resolveItem4TypeRegistration( CacheItemList* pList, + const ::rtl::OUString& sItem, + const ::rtl::OUString& sType) + throw(css::uno::Exception); + + //------------------------------------------- + // static helper + + private: + + //--------------------------------------- + + /** @short read the specified config set into the cache. + + @descr This method provides the following mechanism for reading: + a) read only standard properties of set items + b) read anything + c) read only optional properties and update already existing + items of the specified cache + + @param xConfig + API which provides access to the required configuration set. + + @param eType + specify the type of config item, which must be interpreted. + Of course this information can be used to locate the right set + at the given xConfig API object. + + @param eOption + regulate reading of standard/optional or all properties. + + @param pCache + points to the cache member, which should be filled or updated. + + @throw [css::uno::Exception] + if an unrecoverable error occure inside this operation. + */ + void impl_loadSet(const css::uno::Reference< css::container::XNameAccess >& xConfig, + EItemType eType , + EReadOption eOption, + CacheItemList* pCache ) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short read the specified container item from the given configuration set. + + @descr Its not added to any internal structures here. That must be done + outside this method. + + @param xSet + provides access to the configuration set, which includes all items. + + @param eType + specify, which container item type must be readed. + + @param sItem + means the internal name, which can be used to adress the item + properties relativ to the given configuration set. + + @param eOption + regulate, which properties of the requested item should be read. + See defintion of EReadOption for further informations. + + @throw [css::uno::Exception] + if an unrecoverable error occure inside this operation. + */ + CacheItem impl_loadItem(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType , + const ::rtl::OUString& sItem , + EReadOption eOption) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short try to load the requested item on demand from the underlying configuration + layer. + + @descr The outside code has to be shure, that the item does not already exists + inside this cachse. Otherwise it will be loaded twice. This method + doesnt check such constellations! + + @param eType + specify the type of config item, which must be interpreted. + Of course this information can be used to locate the right set + at the given xConfig API object. + + @param sItem + the set node name of the requested item. + + @return An iterator, which points directly to the new cached item. + Is a valid iterator if no exception occured here! + But to improve robustness - it should be checked :-) + + @throw [css::container::NoSuchElementException] + if the item does not exists inside the configuration layer too! + + @throw [css::uno::Exception] + if an unrecoverable error occure inside this operation. + */ + CacheItemList::iterator impl_loadItemOnDemand( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_saveItem(const css::uno::Reference< css::container::XNameReplace >& xSet , + EItemType eType , + const CacheItem& aValue) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_addItem2FlushList( EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + + //--------------------------------------- + + /** TODO */ + void impl_flushByList(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType , + const CacheItemList& rCache, + const OUStringList& lItems) + throw(css::uno::Exception); + + //--------------------------------------- + + /** @short specify, which save operation is neccessary for the specified item. + + @desrc If an item of this cache will be added/removed or modified it will + be changed inside memory only first. But we save its name inside a special + list of changed items. If at least the method flush() is called, we use + this list to check if the item was changed/added or removed. This method + checks the exist state of the requested item inside our own cache + and inside the underlying configuration layer to find out, if the item + must be removed/added or modified inside the configuratuion layer. + + @param xSet + points directly to the configuration set, where the item should resist + (if it exists!). + + @param rList + points to our internal cache list, where the item should resist + (if it exists!). + + @param sItem + the internal name of the item, which should be checked. + + @return An enum value of type EItemFlushState, which indicates the needed + API operation for updating the underlying configuration layer. + + @throws An exception if anything failed inside this operation. + e.g. the given configuration set was not open. + */ + EItemFlushState impl_specifyFlushOperation(const css::uno::Reference< css::container::XNameAccess >& xSet , + const CacheItemList& rList, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_readPatchUINames(const css::uno::Reference< css::container::XNameAccess >& xNode, + CacheItem& rItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_savePatchUINames(const css::uno::Reference< css::container::XNameReplace >& xNode, + const CacheItem& rItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_readOldFormat() + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + CacheItem impl_readOldItem(const css::uno::Reference< css::container::XNameAccess >& xSet , + EItemType eType, + const ::rtl::OUString& sItem) + throw(css::uno::Exception); + + //--------------------------------------- + + /** TODO */ + void impl_interpretDataVal4Type(const ::rtl::OUString& sValue, + sal_Int32 nProp , + CacheItem& rItem ); + + //--------------------------------------- + + /** TODO */ + void impl_interpretDataVal4Filter(const ::rtl::OUString& sValue, + sal_Int32 nProp , + CacheItem& rItem ); + + //--------------------------------------- + + /** TODO */ + OUStringList impl_tokenizeString(const ::rtl::OUString& sData , + sal_Unicode cSeperator); + + //--------------------------------------- + +#if OSL_DEBUG_LEVEL > 0 + /** TODO */ + ::rtl::OUString impl_searchFrameLoaderForType(const ::rtl::OUString& sType) const; + ::rtl::OUString impl_searchContentHandlerForType(const ::rtl::OUString& sType) const; +#endif + + //--------------------------------------- + /** @short check if the specified OOo module is installed. + + @param sModule + the long name of the module (e.g. "com.sun.star.text.TextDocument"). + + @return TRUE if the requested module is installed; FALSE otherwise. + */ + sal_Bool impl_isModuleInstalled(const ::rtl::OUString& sModule); + + //--------------------------------------- + + /** @short convert a list of flag names to its int representation. + + @param lNames + the list of flag names. + + @return [sal_Int32] + the converted flag field. + */ + static sal_Int32 impl_convertFlagNames2FlagField(const css::uno::Sequence< ::rtl::OUString >& lNames); + + //--------------------------------------- + + /** @short convert a flag field value to its list representation of flag names. + + @param nFlags + the flag field value + + @return [seq< string >] + the converted flag name list. + */ + static css::uno::Sequence< ::rtl::OUString > impl_convertFlagField2FlagNames(sal_Int32 nFlags); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_FILTERCACHE_HXX_ diff --git a/filter/source/config/cache/filterfactory.cxx b/filter/source/config/cache/filterfactory.cxx new file mode 100644 index 000000000000..dc7869be27ca --- /dev/null +++ b/filter/source/config/cache/filterfactory.cxx @@ -0,0 +1,724 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "filterfactory.hxx" +#include "macros.hxx" +#include "constant.hxx" +#include "versions.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/lang/XInitialization.hpp> +#include <comphelper/enumhelper.hxx> +#include <comphelper/configurationhelper.hxx> +#include <rtl/ustrbuf.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/** @short can be used to query for filters related to its application module. + */ +#define BASE_QUERY_ALL "_query_all" +#define BASE_QUERY_WRITER "_query_Writer" +#define BASE_QUERY_WEB "_query_web" +#define BASE_QUERY_GLOBAL "_query_global" +#define BASE_QUERY_CHART "_query_chart" +#define BASE_QUERY_CALC "_query_calc" +#define BASE_QUERY_IMPRESS "_query_impress" +#define BASE_QUERY_DRAW "_query_draw" +#define BASE_QUERY_MATH "_query_math" + +//_______________________________________________ + +/** @short define all possible parts of a filter query. + + @descr syntax: "<query>[:<param>[=<value>]]" + e.g.: "_query_writer:default_first:use_order:sort_prop=uiname" + + argument description default + ----------------------------------------------------------------------------------------------- + iflags=<mask> include filters by given mask 0 + eflags=<mask> exclude filters by given mask 0 + sort_prop=<[name,uiname]> sort by internal name or uiname name + descending sort descending false + use_order use order flag of filters for sorting false + default_first set default filter on top of return list false + case_sensitive compare "sort_prop" case sensitive false + */ +#define SEPERATOR_QUERYPARAM ((sal_Unicode)':') +#define SEPERATOR_QUERYPARAMVALUE ((sal_Unicode)'=') + +#define QUERYPARAM_IFLAGS ::rtl::OUString::createFromAscii("iflags") +#define QUERYPARAM_EFLAGS ::rtl::OUString::createFromAscii("eflags") +#define QUERYPARAM_SORT_PROP ::rtl::OUString::createFromAscii("sort_prop") + +#define QUERYPARAM_DESCENDING ::rtl::OUString::createFromAscii("descending") +#define QUERYPARAM_USE_ORDER ::rtl::OUString::createFromAscii("use_order") +#define QUERYPARAM_DEFAULT_FIRST ::rtl::OUString::createFromAscii("default_first") +#define QUERYPARAM_CASE_SENSITIVE ::rtl::OUString::createFromAscii("case_sensitive") + +#define QUERYPARAMVALUE_SORT_PROP_NAME ::rtl::OUString::createFromAscii("name") +#define QUERYPARAMVALUE_SORT_PROP_UINAME ::rtl::OUString::createFromAscii("uiname") + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +FilterFactory::FilterFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + BaseContainer::init(xSMGR , + FilterFactory::impl_getImplementationName() , + FilterFactory::impl_getSupportedServiceNames(), + FilterCache::E_FILTER ); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +FilterFactory::~FilterFactory() +{ +} + +/*----------------------------------------------- + 16.07.2003 13:43 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FilterFactory::createInstance(const ::rtl::OUString& sFilter) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + return createInstanceWithArguments(sFilter, css::uno::Sequence< css::uno::Any >()); +} + +/*----------------------------------------------- + 17.07.2003 08:56 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FilterFactory::createInstanceWithArguments(const ::rtl::OUString& sFilter , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + ::rtl::OUString sRealFilter = sFilter; + + #ifdef _FILTER_CONFIG_MIGRATION_Q_ + + /* -> TODO - HACK + check if the given filter name realy exist ... + Because our old implementation worked with an internal + type name instead of a filter name. For a small migration time + we must simulate this old feature :-( */ + + if (!m_rCache->hasItem(FilterCache::E_FILTER, sFilter) && m_rCache->hasItem(FilterCache::E_TYPE, sFilter)) + { + OSL_ENSURE(sal_False, "Who use this deprecated functionality?"); + _FILTER_CONFIG_LOG_("FilterFactory::createInstanceWithArguments() ... simulate old type search functionality!\n"); + + css::uno::Sequence< css::beans::NamedValue > lQuery(1); + lQuery[0].Name = PROPNAME_TYPE; + lQuery[0].Value <<= sFilter; + + css::uno::Reference< css::container::XEnumeration > xSet = createSubSetEnumerationByProperties(lQuery); + while(xSet->hasMoreElements()) + { + ::comphelper::SequenceAsHashMap lHandlerProps(xSet->nextElement()); + if (!(lHandlerProps[PROPNAME_NAME] >>= sRealFilter)) + continue; + } + + // prevent outside code against NoSuchElementException! + // But dont implement such defensive strategy for our new create handling :-) + if (!m_rCache->hasItem(FilterCache::E_FILTER, sRealFilter)) + return css::uno::Reference< css::uno::XInterface>(); + } + + /* <- HACK */ + + #endif // _FILTER_CONFIG_MIGRATION_Q_ + + // search filter on cache + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, sRealFilter); + ::rtl::OUString sFilterService; + aFilter[PROPNAME_FILTERSERVICE] >>= sFilterService; + + // create service instance + css::uno::Reference< css::uno::XInterface > xFilter; + if (sFilterService.getLength()) + xFilter = m_xSMGR->createInstance(sFilterService); + + // initialize filter + css::uno::Reference< css::lang::XInitialization > xInit(xFilter, css::uno::UNO_QUERY); + if (xInit.is()) + { + // format: lInitData[0] = seq<PropertyValue>, which contains all configuration properties of this filter + // lInitData[1] = lArguments[0] + // ... + // lInitData[n] = lArguments[n-1] + css::uno::Sequence< css::beans::PropertyValue > lConfig; + aFilter >> lConfig; + + ::comphelper::SequenceAsVector< css::uno::Any > stlArguments(lArguments); + stlArguments.insert(stlArguments.begin(), css::uno::makeAny(lConfig)); + + css::uno::Sequence< css::uno::Any > lInitData; + stlArguments >> lInitData; + + xInit->initialize(lInitData); + } + + return xFilter; + // <- SAFE +} + +/*----------------------------------------------- + 18.02.2004 14:21 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > SAL_CALL FilterFactory::getAvailableServiceNames() + throw(css::uno::RuntimeException) +{ + /* Attention: Instead of getElementNames() this method have to return only filter names, + which can be created as UNO Services realy. Thats why we search for filters, + which dont have a valid value for the property "FilterService". + Of course we cant check for corrupted service names here. We can check + for empty strings only ... + */ + CacheItem lIProps; + CacheItem lEProps; + lEProps[PROPNAME_FILTERSERVICE] <<= ::rtl::OUString(); + + OUStringList lUNOFilters; + try + { + lUNOFilters = m_rCache->getMatchingItemsByProps(FilterCache::E_FILTER, lIProps, lEProps); + } + catch(const css::uno::RuntimeException&) + { throw; } + catch(const css::uno::Exception&) + { lUNOFilters.clear(); } + + return lUNOFilters.getAsConstList(); +} + +/*----------------------------------------------- + 11.03.2004 08:37 +-----------------------------------------------*/ +css::uno::Reference< css::container::XEnumeration > SAL_CALL FilterFactory::createSubSetEnumerationByQuery(const ::rtl::OUString& sQuery) + throw (css::uno::RuntimeException) +{ + // reject old deprecated queries ... + if (sQuery.matchAsciiL("_filterquery_",13,0)) + throw css::uno::RuntimeException( + _FILTER_CONFIG_FROM_ASCII_("Use of deprecated and now unsupported query!"), + static_cast< css::container::XContainerQuery* >(this)); + + // convert "_query_xxx:..." to "getByDocService=xxx:..." + ::rtl::OUString sNewQuery(sQuery); + sal_Int32 pos = sNewQuery.indexOf(::rtl::OUString::createFromAscii("_query_"),0); + if (pos != -1) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use new query format: 'matchByDocumentService=...'"); + ::rtl::OUStringBuffer sPatchedQuery(256); + sPatchedQuery.appendAscii("matchByDocumentService="); + sPatchedQuery.append (sNewQuery.copy(7) ); + sNewQuery = sPatchedQuery.makeStringAndClear(); + } + + // analyze query and split it into its tokens + QueryTokenizer lTokens(sNewQuery); + QueryTokenizer::const_iterator pIt; + OUStringList lEnumSet; + + // start query + // (see attention comment below!) + if (lTokens.valid()) + { + // SAFE -> ---------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + // May be not all filters was loaded ... + // But we need it now! + impl_loadOnDemand(); + aLock.clear(); + // <- SAFE ---------------------- + + if (lTokens.find(QUERY_IDENTIFIER_GETPREFERREDFILTERFORTYPE) != lTokens.end()) + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use prop search at the TypeDetection container!"); +// lEnumSet = impl_queryGetPreferredFilterForType(lTokens); + else + if (lTokens.find(QUERY_IDENTIFIER_MATCHBYDOCUMENTSERVICE) != lTokens.end()) + lEnumSet = impl_queryMatchByDocumentService(lTokens); + else + if (lTokens.find(QUERY_IDENTIFIER_GET_SORTED_FILTERLIST) != lTokens.end()) + lEnumSet = impl_getSortedFilterList(lTokens); + } + + // pack list of item names as an enum list + // Attention: Do not return empty reference for empty list! + // The outside check "hasMoreElements()" should be enough, to detect this state :-) +// size_t c = lEnumSet.size(); + css::uno::Sequence< ::rtl::OUString > lSet = lEnumSet.getAsConstList(); + ::comphelper::OEnumerationByName* pEnum = new ::comphelper::OEnumerationByName(this, lSet); + return css::uno::Reference< css::container::XEnumeration >(static_cast< css::container::XEnumeration* >(pEnum), css::uno::UNO_QUERY); +} +/* + if (lEnumSet.empty()) + { + //------------------------------------------- + // 1) getDefaultFilterForType=<internal_typename> + + pIt = lTokens.find(::rtl::OUString::createFromAscii("getDefaultFilterForType")); + if (pIt != lTokens.end()) + { + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // might not all types was loaded till now! + impl_loadOnDemand(); + + ::rtl::OUString sType = pIt->second; + FilterCache* pCache = impl_getWorkingCache(); + if (pCache->hasItem(FilterCache::E_TYPE, sType)) + { + CacheItem aType = pCache->getItem(FilterCache::E_TYPE, sType); + ::rtl::OUString sPreferredFilter; + aType[PROPNAME_PREFERREDFILTER] >>= sPreferredFilter; + + if ( + (sPreferredFilter.getLength() ) && + (pCache->hasItem(FilterCache::E_FILTER, sPreferredFilter)) + ) + { + lEnumSet.push_back(sPreferredFilter); + } + } + + aLock.clear(); + // <- SAFE + } + } +*/ + +/*----------------------------------------------- + 11.03.2004 08:33 +-----------------------------------------------*/ +OUStringList FilterFactory::impl_queryMatchByDocumentService(const QueryTokenizer& lTokens) const +{ + // analyze query + QueryTokenizer::const_iterator pIt; + + ::rtl::OUString sDocumentService; + sal_Int32 nIFlags = 0; + sal_Int32 nEFlags = 0; + + pIt = lTokens.find(QUERY_IDENTIFIER_MATCHBYDOCUMENTSERVICE); + if (pIt != lTokens.end()) + sDocumentService = pIt->second; + +#define COMP_HACK +#ifdef COMP_HACK + if (sDocumentService.equalsAscii("writer")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.text.TextDocument"); + } + else + if (sDocumentService.equalsAscii("web")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.text.WebDocument"); + } + else + if (sDocumentService.equalsAscii("global")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.text.GlobalDocument"); + } + else + if (sDocumentService.equalsAscii("calc")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.sheet.SpreadsheetDocument"); + } + else + if (sDocumentService.equalsAscii("draw")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.drawing.DrawingDocument"); + } + else + if (sDocumentService.equalsAscii("impress")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.presentation.PresentationDocument"); + } + else + if (sDocumentService.equalsAscii("math")) + { + OSL_ENSURE(sal_False, "DEPRECATED!\nPlease use right document service for filter query!"); + sDocumentService = ::rtl::OUString::createFromAscii("com.sun.star.formula.FormulaProperties"); + } +#endif + + pIt = lTokens.find(QUERY_PARAM_IFLAGS); + if (pIt != lTokens.end()) + nIFlags = ::rtl::OUString(pIt->second).toInt32(); + + pIt = lTokens.find(QUERY_PARAM_EFLAGS); + if (pIt != lTokens.end()) + nEFlags = ::rtl::OUString(pIt->second).toInt32(); + + // SAFE -> ---------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // search suitable filters + FilterCache* pCache = impl_getWorkingCache(); + OUStringList lFilterNames = pCache->getItemNames(FilterCache::E_FILTER); + OUStringList lResult ; + + for (OUStringList::const_iterator pName = lFilterNames.begin(); + pName != lFilterNames.end() ; + ++pName ) + { + try + { + const ::rtl::OUString& sName = *pName; + const CacheItem aFilter = pCache->getItem(FilterCache::E_FILTER, sName); + CacheItem::const_iterator pProp ; + + // "matchByDocumentService=" => any filter will be adressed here + // "matchByDocumentService=all" => any filter will be adressed here + // "matchByDocumentService=com.sun.star..." => only filter matching this document service will be adressed + ::rtl::OUString sCheckValue = aFilter.getUnpackedValueOrDefault(PROPNAME_DOCUMENTSERVICE, ::rtl::OUString()); + if ( + ( sDocumentService.getLength() ) && + (!sDocumentService.equals(QUERY_CONSTVALUE_ALL)) && + (!sCheckValue.equals(sDocumentService) ) + ) + { + continue; // ignore filter -> try next one! + } + + // "iflags=" => not allowed + // "iflags=-1" => not allowed + // "iflags=0" => not usefull + // "iflags=283648" => only filter, which has set these flag field will be adressed + sal_Int32 nCheckValue = aFilter.getUnpackedValueOrDefault(PROPNAME_FLAGS, (sal_Int32)0); + if ( + (nIFlags > 0 ) && + ((nCheckValue & nIFlags) != nIFlags) + ) + { + continue; // ignore filter -> try next one! + } + + // "eflags=" => not allowed + // "eflags=-1" => not allowed + // "eflags=0" => not usefull + // "eflags=283648" => only filter, which has not set these flag field will be adressed + if ( + (nEFlags > 0 ) && + ((nCheckValue & nEFlags) == nEFlags) + ) + { + continue; // ignore filter -> try next one! + } + + // OK - this filter passed all checks. + // It match the query ... + lResult.push_back(sName); + } + catch(const css::uno::RuntimeException& exRun) + { throw exRun; } + catch(const css::uno::Exception&) + { continue; } + } + + aLock.clear(); + // <- SAFE ---------------------- + + return lResult; +} + +/*----------------------------------------------- + 21.01.2005 13:39 +-----------------------------------------------*/ +class stlcomp_removeIfMatchFlags +{ + private: + FilterCache* m_pCache ; + sal_Int32 m_nFlags ; + sal_Bool m_bIFlags; + + public: + stlcomp_removeIfMatchFlags(FilterCache* pCache , + sal_Int32 nFlags , + sal_Bool bIFlags) + : m_pCache (pCache ) + , m_nFlags (nFlags ) + , m_bIFlags(bIFlags) + {} + + bool operator() (const ::rtl::OUString& sFilter) const + { + try + { + const CacheItem aFilter = m_pCache->getItem(FilterCache::E_FILTER, sFilter); + sal_Int32 nFlags = aFilter.getUnpackedValueOrDefault(PROPNAME_FLAGS, ((sal_Int32)0)); + + bool bMatch = false; + if (m_bIFlags) + // IFlags are interpeted as ALL_FLAGS_MUST_MATCH ! + bMatch = ((nFlags & m_nFlags) == m_nFlags); + else + // EFlags are interpreted as ATE_LEAST_ONE_FLAG_MUST_MATCH ! + bMatch = !(nFlags & m_nFlags); + // We are asked for bRemove ! And bMatch = !bRemove => so bRemove = !bMatch .-) + return !bMatch; + } + catch(css::container::NoSuchElementException) + { + return true; + } + } +}; + +/*----------------------------------------------- + 21.01.2005 13:39 +-----------------------------------------------*/ +OUStringList FilterFactory::impl_getSortedFilterList(const QueryTokenizer& lTokens) const +{ + // analyze the given query parameter + QueryTokenizer::const_iterator pIt1; + + ::rtl::OUString sModule; + sal_Int32 nIFlags = -1; + sal_Int32 nEFlags = -1; + + pIt1 = lTokens.find(QUERY_PARAM_MODULE); + if (pIt1 != lTokens.end()) + sModule = pIt1->second; + pIt1 = lTokens.find(QUERY_PARAM_IFLAGS); + if (pIt1 != lTokens.end()) + nIFlags = ::rtl::OUString(pIt1->second).toInt32(); + pIt1 = lTokens.find(QUERY_PARAM_EFLAGS); + if (pIt1 != lTokens.end()) + nEFlags = ::rtl::OUString(pIt1->second).toInt32(); + + // simple search for filters of one specific module. + OUStringList lFilterList; + if (sModule.getLength()) + lFilterList = impl_getSortedFilterListForModule(sModule, nIFlags, nEFlags); + else + { + // more complex search for all filters + // We check first, which office modules are installed ... + OUStringList lModules = impl_getListOfInstalledModules(); + OUStringList::const_iterator pIt2; + for ( pIt2 = lModules.begin(); + pIt2 != lModules.end() ; + ++pIt2 ) + { + sModule = *pIt2; + OUStringList lFilters4Module = impl_getSortedFilterListForModule(sModule, nIFlags, nEFlags); + OUStringList::const_iterator pIt3; + for ( pIt3 = lFilters4Module.begin(); + pIt3 != lFilters4Module.end() ; + ++pIt3 ) + { + const ::rtl::OUString& sFilter = *pIt3; + lFilterList.push_back(sFilter); + } + } + } + + return lFilterList; +} + +/*----------------------------------------------- + 21.01.2005 10:19 +-----------------------------------------------*/ +OUStringList FilterFactory::impl_getListOfInstalledModules() const +{ + // SAFE -> ---------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR; + aLock.clear(); + // <- SAFE ---------------------- + + try + { + css::uno::Reference< css::container::XNameAccess > xModuleConfig( + ::comphelper::ConfigurationHelper::openConfig(xSMGR, + CFGPACKAGE_OOO_MODULES, + ::comphelper::ConfigurationHelper::E_READONLY), + css::uno::UNO_QUERY_THROW); + OUStringList lModules(xModuleConfig->getElementNames()); + return lModules; + } + catch(const css::uno::RuntimeException& exRun) + { throw exRun; } + catch(const css::uno::Exception&) + {} + + return OUStringList(); +} + +/*----------------------------------------------- + 21.01.2005 10:19 +-----------------------------------------------*/ +OUStringList FilterFactory::impl_getSortedFilterListForModule(const ::rtl::OUString& sModule, + sal_Int32 nIFlags, + sal_Int32 nEFlags) const +{ + OUStringList lSortedFilters = impl_readSortedFilterListFromConfig(sModule); + + // get all filters for the requested module + CacheItem lIProps; + lIProps[PROPNAME_DOCUMENTSERVICE] <<= sModule; + + // SAFE -> ---------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + FilterCache* pCache = impl_getWorkingCache(); + OUStringList lOtherFilters = pCache->getMatchingItemsByProps(FilterCache::E_FILTER, lIProps); + aLock.clear(); + // <- SAFE ---------------------- + + // bring "other" filters in an alphabeticly order + // It's needed below. + ::std::sort(lOtherFilters.begin(), lOtherFilters.end()); + + // merge both lists together + OUStringList lMergedFilters = lSortedFilters; + OUStringList::iterator pIt2; + OUStringList::iterator pIt3; + for ( pIt2 = lOtherFilters.begin(); + pIt2 != lOtherFilters.end() ; + ++pIt2 ) + { + const ::rtl::OUString& rFilter = *pIt2; + pIt3 = ::std::find(lSortedFilters.begin(), lSortedFilters.end(), rFilter); + if (pIt3 == lSortedFilters.end()) + lMergedFilters.push_back(rFilter); + } + + // remove all filters from this merged list, which does not fit the flag specification + if (nIFlags != -1) + { + pIt2 = ::std::remove_if(lMergedFilters.begin(), lMergedFilters.end(), stlcomp_removeIfMatchFlags(pCache, nIFlags, sal_True)); + lMergedFilters.erase(pIt2, lMergedFilters.end()); + } + if (nEFlags != -1) + { + pIt2 = ::std::remove_if(lMergedFilters.begin(), lMergedFilters.end(), stlcomp_removeIfMatchFlags(pCache, nEFlags, sal_False)); + lMergedFilters.erase(pIt2, lMergedFilters.end()); + } + + // sort the default filter to the front of this list + // TODO + + return lMergedFilters; +} + +/*----------------------------------------------- + 21.01.2005 10:19 +-----------------------------------------------*/ +OUStringList FilterFactory::impl_readSortedFilterListFromConfig(const ::rtl::OUString& sModule) const +{ + // SAFE -> ---------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR; + aLock.clear(); + // <- SAFE ---------------------- + + try + { + css::uno::Reference< css::container::XNameAccess > xUISortConfig( + ::comphelper::ConfigurationHelper::openConfig(xSMGR, + CFGPACKAGE_TD_UISORT, + ::comphelper::ConfigurationHelper::E_READONLY), + css::uno::UNO_QUERY_THROW); + + // dont ccheck the module name here. If it does not exists, an exception is thrown and catched below. + // We return an empty list as result then. + css::uno::Reference< css::container::XNameAccess > xModule; + xUISortConfig->getByName(sModule) >>= xModule; + if (xModule.is()) // only to be on the safe side of life if the exception was not thrown .-) + { + // Note: convertion of the returned Any to OUStringList throws + // an IllegalArgumentException if the type does not match ... + // but it resets the OUStringList to a length of 0 if the Any is empty! + OUStringList lSortedFilters(xModule->getByName(PROPNAME_SORTEDFILTERLIST)); + return lSortedFilters; + } + } + catch(const css::uno::RuntimeException& exRun) + { throw exRun; } + catch(const css::uno::Exception&) + {} + + return OUStringList(); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +::rtl::OUString FilterFactory::impl_getImplementationName() +{ + return ::rtl::OUString::createFromAscii("com.sun.star.comp.filter.config.FilterFactory"); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > FilterFactory::impl_getSupportedServiceNames() +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames(1); + lServiceNames[0] = ::rtl::OUString::createFromAscii("com.sun.star.document.FilterFactory"); + return lServiceNames; +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FilterFactory::impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + FilterFactory* pNew = new FilterFactory(xSMGR); + return css::uno::Reference< css::uno::XInterface >(static_cast< css::lang::XMultiServiceFactory* >(pNew), css::uno::UNO_QUERY); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/filterfactory.hxx b/filter/source/config/cache/filterfactory.hxx new file mode 100644 index 000000000000..2f0ba31f942b --- /dev/null +++ b/filter/source/config/cache/filterfactory.hxx @@ -0,0 +1,212 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_FILTERFACTORY_HXX_ +#define __FILTER_CONFIG_FILTERFACTORY_HXX_ + +//_______________________________________________ +// includes + +#include "basecontainer.hxx" +#include "querytokenizer.hxx" +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements the service <type scope="com.sun.star.document">FilterFactory</type>. + */ +class FilterFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer , + css::lang::XMultiServiceFactory > +{ + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor to connect this interface wrapper to + the global filter cache instance ... + + @param xSMGR + reference to the uno service manager, which created this service instance. + */ + FilterFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~FilterFactory(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XMultiServiceFactory + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance(const ::rtl::OUString& sFilter) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments(const ::rtl::OUString& sFilter , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames() + throw(css::uno::RuntimeException); + + //--------------------------------------- + // XContainerQuery + + virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByQuery(const ::rtl::OUString& sQuery) + throw (css::uno::RuntimeException); + + //------------------------------------------- + // internal helper! + + private: + + //--------------------------------------- + + /** @short implement the container string query: "matchByDocumentService=:iflags=:eflags=:..." + + @param lTokens + the list of query tokens and its values. + + @return A string list of internal filter names, including + all filters, which match this query. + */ + OUStringList impl_queryMatchByDocumentService(const QueryTokenizer& lTokens) const; + + //--------------------------------------- + + /** TODO document me + */ + OUStringList impl_getListOfInstalledModules() const; + + //--------------------------------------- + + /** @short implement the container string query: + "getSortedFilterList()[:module=<xxx>]:[iflags=<xxx>][:eflags=<xxx>]" + + @param lTokens + the list of query tokens and its values. + + @return A string list of internal filter names, including + all filters, which match this query. + */ + OUStringList impl_getSortedFilterList(const QueryTokenizer& lTokens) const; + + //--------------------------------------- + + /** TODO document me + */ + OUStringList impl_getSortedFilterListForModule(const ::rtl::OUString& sModule, + sal_Int32 nIFlags, + sal_Int32 nEFlags) const; + + //--------------------------------------- + + /** @short read a specialized and sorted list of filter names from + the configuration (matching the specified module) + + @param sModule + the module for which the sorted list should be retrieved for. + + @return A string list of internal filter names. + Can be empty. + */ + OUStringList impl_readSortedFilterListFromConfig(const ::rtl::OUString& sModule) const; + + //------------------------------------------- + // static uno helper! + + public: + + //--------------------------------------- + + /** @short return the uno implementation name of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix uno implementation name of this class. + */ + static ::rtl::OUString impl_getImplementationName(); + + //--------------------------------------- + + /** @short return the list of supported uno services of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix list of uno services supported by this class. + */ + static css::uno::Sequence< ::rtl::OUString > impl_getSupportedServiceNames(); + + //--------------------------------------- + + /** @short return a new intsnace of this class. + + @descr This method is used by the uno service manager, to create + a new instance of this service if needed. + + @param xSMGR + reference to the uno service manager, which require + this new instance. It should be passed to the new object + so it can be used internaly to create own needed uno resources. + + @return The new instance of this service as an uno reference. + */ + static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_FILTERFACTORY_HXX_ diff --git a/filter/source/config/cache/frameloaderfactory.cxx b/filter/source/config/cache/frameloaderfactory.cxx new file mode 100644 index 000000000000..3c9163899a97 --- /dev/null +++ b/filter/source/config/cache/frameloaderfactory.cxx @@ -0,0 +1,198 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "frameloaderfactory.hxx" +#include "macros.hxx" +#include "constant.hxx" +#include "versions.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/lang/XInitialization.hpp> +#include <comphelper/enumhelper.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +FrameLoaderFactory::FrameLoaderFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + BaseContainer::init(xSMGR , + FrameLoaderFactory::impl_getImplementationName() , + FrameLoaderFactory::impl_getSupportedServiceNames(), + FilterCache::E_FRAMELOADER ); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +FrameLoaderFactory::~FrameLoaderFactory() +{ +} + +/*----------------------------------------------- + 16.07.2003 13:37 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FrameLoaderFactory::createInstance(const ::rtl::OUString& sLoader) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + return createInstanceWithArguments(sLoader, css::uno::Sequence< css::uno::Any >()); +} + +/*----------------------------------------------- + 17.07.2003 09:00 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FrameLoaderFactory::createInstanceWithArguments(const ::rtl::OUString& sLoader , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + ::rtl::OUString sRealLoader = sLoader; + + #ifdef _FILTER_CONFIG_MIGRATION_Q_ + + /* -> TODO - HACK + check if the given loader name realy exist ... + Because our old implementation worked with an internal + type name instead of a loader name. For a small migration time + we must simulate this old feature :-( */ + + if (!m_rCache->hasItem(FilterCache::E_FRAMELOADER, sLoader) && m_rCache->hasItem(FilterCache::E_TYPE, sLoader)) + { + _FILTER_CONFIG_LOG_("FrameLoaderFactory::createInstanceWithArguments() ... simulate old type search functionality!\n"); + + css::uno::Sequence< ::rtl::OUString > lTypes(1); + lTypes[0] = sLoader; + + css::uno::Sequence< css::beans::NamedValue > lQuery(1); + lQuery[0].Name = PROPNAME_TYPES; + lQuery[0].Value <<= lTypes; + + css::uno::Reference< css::container::XEnumeration > xSet = createSubSetEnumerationByProperties(lQuery); + while(xSet->hasMoreElements()) + { + ::comphelper::SequenceAsHashMap lLoaderProps(xSet->nextElement()); + if (!(lLoaderProps[PROPNAME_NAME] >>= sRealLoader)) + continue; + } + + // prevent outside code against NoSuchElementException! + // But dont implement such defensive strategy for our new create handling :-) + if (!m_rCache->hasItem(FilterCache::E_FRAMELOADER, sRealLoader)) + return css::uno::Reference< css::uno::XInterface>(); + } + + /* <- HACK */ + + #endif // _FILTER_CONFIG_MIGRATION_Q_ + + // search loader on cache + CacheItem aLoader = m_rCache->getItem(m_eType, sRealLoader); + + // create service instance + css::uno::Reference< css::uno::XInterface > xLoader = m_xSMGR->createInstance(sRealLoader); + + // initialize filter + css::uno::Reference< css::lang::XInitialization > xInit(xLoader, css::uno::UNO_QUERY); + if (xInit.is()) + { + // format: lInitData[0] = seq<PropertyValue>, which contains all configuration properties of this loader + // lInitData[1] = lArguments[0] + // ... + // lInitData[n] = lArguments[n-1] + css::uno::Sequence< css::beans::PropertyValue > lConfig; + aLoader >> lConfig; + + ::comphelper::SequenceAsVector< css::uno::Any > stlArguments(lArguments); + stlArguments.insert(stlArguments.begin(), css::uno::makeAny(lConfig)); + + css::uno::Sequence< css::uno::Any > lInitData; + stlArguments >> lInitData; + + xInit->initialize(lInitData); + } + + return xLoader; + // <- SAFE +} + +/*----------------------------------------------- + 09.07.2003 07:46 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > SAL_CALL FrameLoaderFactory::getAvailableServiceNames() + throw(css::uno::RuntimeException) +{ + // must be the same list as ((XNameAccess*)this)->getElementNames() return! + return getElementNames(); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +::rtl::OUString FrameLoaderFactory::impl_getImplementationName() +{ + return ::rtl::OUString::createFromAscii("com.sun.star.comp.filter.config.FrameLoaderFactory"); +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > FrameLoaderFactory::impl_getSupportedServiceNames() +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames(1); + lServiceNames[0] = ::rtl::OUString::createFromAscii("com.sun.star.frame.FrameLoaderFactory"); + return lServiceNames; +} + +/*----------------------------------------------- + 09.07.2003 07:43 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL FrameLoaderFactory::impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + FrameLoaderFactory* pNew = new FrameLoaderFactory(xSMGR); + return css::uno::Reference< css::uno::XInterface >(static_cast< css::lang::XMultiServiceFactory* >(pNew), css::uno::UNO_QUERY); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/frameloaderfactory.hxx b/filter/source/config/cache/frameloaderfactory.hxx new file mode 100644 index 000000000000..7741f0011f38 --- /dev/null +++ b/filter/source/config/cache/frameloaderfactory.hxx @@ -0,0 +1,148 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_FRAMELOADERFACTORY_HXX_ +#define __FILTER_CONFIG_FRAMELOADERFACTORY_HXX_ + +//_______________________________________________ +// includes + +#include "basecontainer.hxx" +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements the service <type scope="com.sun.star.document">FrameLoaderFactory</type>. + */ +class FrameLoaderFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer , + css::lang::XMultiServiceFactory > +{ + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor to connect this interface wrapper to + the global filter cache instance ... + + @param xSMGR + reference to the uno service manager, which created this service instance. + */ + FrameLoaderFactory(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~FrameLoaderFactory(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XMultiServiceFactory + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance(const ::rtl::OUString& sLoader) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments(const ::rtl::OUString& sLoader , + const css::uno::Sequence< css::uno::Any >& lArguments) + throw(css::uno::Exception , + css::uno::RuntimeException); + + virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames() + throw(css::uno::RuntimeException); + + //------------------------------------------- + // static uno helper! + + public: + + //--------------------------------------- + + /** @short return the uno implementation name of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix uno implementation name of this class. + */ + static ::rtl::OUString impl_getImplementationName(); + + //--------------------------------------- + + /** @short return the list of supported uno services of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix list of uno services supported by this class. + */ + static css::uno::Sequence< ::rtl::OUString > impl_getSupportedServiceNames(); + + //--------------------------------------- + + /** @short return a new intsnace of this class. + + @descr This method is used by the uno service manager, to create + a new instance of this service if needed. + + @param xSMGR + reference to the uno service manager, which require + this new instance. It should be passed to the new object + so it can be used internaly to create own needed uno resources. + + @return The new instance of this service as an uno reference. + */ + static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_FRAMELOADERFACTORY_HXX_ diff --git a/filter/source/config/cache/lateinitlistener.cxx b/filter/source/config/cache/lateinitlistener.cxx new file mode 100644 index 000000000000..b9b090025227 --- /dev/null +++ b/filter/source/config/cache/lateinitlistener.cxx @@ -0,0 +1,136 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "lateinitlistener.hxx" +#include "lateinitthread.hxx" + +//_______________________________________________ +// includes +#include <rtl/ustring.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 14.08.2003 07:35 +-----------------------------------------------*/ +LateInitListener::LateInitListener(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) + : BaseLock( ) + , m_xSMGR (xSMGR) +{ + // important to do so ... + // Otherwhise the temp. reference to ourselves + // will kill us at realeasing time! + osl_incrementInterlockedCount( &m_refCount ); + + m_xBroadcaster = css::uno::Reference< css::document::XEventBroadcaster >( + m_xSMGR->createInstance(::rtl::OUString::createFromAscii("com.sun.star.frame.GlobalEventBroadcaster")), + css::uno::UNO_QUERY); + + m_xBroadcaster->addEventListener(static_cast< css::document::XEventListener* >(this)); + + osl_decrementInterlockedCount( &m_refCount ); +} + +/*----------------------------------------------- + 14.08.2003 07:25 +-----------------------------------------------*/ +LateInitListener::~LateInitListener() +{ +} + +/*----------------------------------------------- + 14.08.2003 08:45 +-----------------------------------------------*/ +void SAL_CALL LateInitListener::notifyEvent(const css::document::EventObject& aEvent) + throw(css::uno::RuntimeException) +{ + // wait for events, which indicates finished open of the first document + if ( + (aEvent.EventName.equalsAscii("OnNew") ) || + (aEvent.EventName.equalsAscii("OnLoad")) + ) + { + // this thread must be started one times only ... + // cancel listener connection before! + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + if ( !m_xBroadcaster.is() ) + // the beauty of multi-threading ... OnLoad can be notified synchronously or asynchronously. In particular, + // SFX-based documents notify it synchronously, database documents do it asynchronously. + // Now if multiple documents are opened "at the same time", it is well possible that we get two events from + // different threads, where upon the first event, we already remove ourself from m_xBroadcaster, and start + // the thread, nonetheless there's also a second notification "in the queue", which will arrive short + // thereafter. + // In such a case, simply ignore this second event. + return; + + m_xBroadcaster->removeEventListener(static_cast< css::document::XEventListener* >(this)); + m_xBroadcaster.clear(); + + aLock.clear(); + // <- SAFE + + LateInitThread* pThread = new LateInitThread(); + pThread->create(); + } +} + +/*----------------------------------------------- + 14.08.2003 07:48 +-----------------------------------------------*/ +void SAL_CALL LateInitListener::disposing(const css::lang::EventObject& /* aEvent */ ) + throw(css::uno::RuntimeException) +{ + // ??? + // Normaly it should never be called. Because we cancel our listener connection + // if we got the event about finished open of the first office document. + // But if this method was reached, it indicates an office, which was started + // (might as remote script container for an external API client) but not realy used. + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + m_xBroadcaster.clear(); + aLock.clear(); + // <- SAFE +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/lateinitlistener.hxx b/filter/source/config/cache/lateinitlistener.hxx new file mode 100644 index 000000000000..0ed1abf1e679 --- /dev/null +++ b/filter/source/config/cache/lateinitlistener.hxx @@ -0,0 +1,125 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_LATEINITLISTENER_HXX_ +#define __FILTER_CONFIG_LATEINITLISTENER_HXX_ + +//_______________________________________________ +// includes + +#include "cacheitem.hxx" +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XEventListener.hpp> +#include <com/sun/star/document/XEventListener.hpp> +#include <com/sun/star/document/XEventBroadcaster.hpp> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements a listener, which will update the + global filter cache of an office, after zje office + startup was finished. + + @descr To perform startup of an office, the filter cache starts + with a minimum set of properties only. After the first document + was loaded successfully a thread will be started to fill the + cache with all other proeprties, so it can work with the whole + filter configuration. + */ +class LateInitListener : public BaseLock // must be the first one to guarantee right initialized mutex member! + , public ::cppu::WeakImplHelper1< css::document::XEventListener > +{ + //------------------------------------------- + // member + + private: + + /** @short reference to an uno service manager, which can be used + to create own needed services. */ + css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR; + + /** @short reference to the global event broadcaster, which is usde to find + out, when the first office document was opened successfully. */ + css::uno::Reference< css::document::XEventBroadcaster > m_xBroadcaster; + + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short initialize new instance of this class. + + @descr It set a reference to the global filter cache singleton, + which should be updated here. Further it starts listening + on the global event broadcaster to get the information, when + loading of the first document was finished. + + @param xSMGR + reference to a service manager, which can be used to create + own needed uno services. + */ + LateInitListener(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~LateInitListener(); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // document.XEventListener + + virtual void SAL_CALL notifyEvent(const css::document::EventObject& aEvent) + throw(css::uno::RuntimeException); + + //--------------------------------------- + // lang.XEventListener + virtual void SAL_CALL disposing(const css::lang::EventObject& aEvent) + throw(css::uno::RuntimeException); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_LATEINITLISTENER_HXX_ diff --git a/filter/source/config/cache/lateinitthread.cxx b/filter/source/config/cache/lateinitthread.cxx new file mode 100644 index 000000000000..13432c30ad0f --- /dev/null +++ b/filter/source/config/cache/lateinitthread.cxx @@ -0,0 +1,80 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "lateinitthread.hxx" + +//_______________________________________________ +// includes + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 14.08.2003 09:31 +-----------------------------------------------*/ +LateInitThread::LateInitThread() +{ +} + +/*----------------------------------------------- + 14.08.2003 08:42 +-----------------------------------------------*/ +LateInitThread::~LateInitThread() +{ +} + +/*----------------------------------------------- + 28.10.2003 09:30 +-----------------------------------------------*/ +void SAL_CALL LateInitThread::run() +{ + // sal_True => It indicates using of this method by this thread + // The filter cache use this information to show an assertion + // for "optimization failure" in case the first calli of loadAll() + // was not this thread ... + + // Further please dont catch any exception here. + // May be they show the problem of a corrupted filter + // configuration, which is handled inside our event loop or desktop.main()! + + ::salhelper::SingletonRef< FilterCache > rCache; + rCache->load(FilterCache::E_CONTAINS_ALL, sal_True); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/lateinitthread.hxx b/filter/source/config/cache/lateinitthread.hxx new file mode 100644 index 000000000000..c330394d434d --- /dev/null +++ b/filter/source/config/cache/lateinitthread.hxx @@ -0,0 +1,89 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __FILTER_CONFIG_LATEINITTHREAD_HXX_ +#define __FILTER_CONFIG_LATEINITTHREAD_HXX_ + +//_______________________________________________ +// includes + +#include "filtercache.hxx" +#include <salhelper/singletonref.hxx> +#include <osl/thread.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements a thread, which will update the + global filter cache of an office, after its + startup was finished. + + @descr Its started by a LateInitListener instance ... + + @see LateInitListener + + @attention The filter cache will be blocked during this thrad runs! + */ +class LateInitThread : public ::osl::Thread +{ + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short initialize new instance of this class. + */ + LateInitThread(); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~LateInitThread(); + + //--------------------------------------- + + /** @short thread function. + */ + virtual void SAL_CALL run(); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_LATEINITTHREAD_HXX_ diff --git a/filter/source/config/cache/macros.hxx b/filter/source/config/cache/macros.hxx new file mode 100644 index 000000000000..485029ead5a8 --- /dev/null +++ b/filter/source/config/cache/macros.hxx @@ -0,0 +1,132 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef _FILTER_CONFIG_MACROS_HXX_ +#define _FILTER_CONFIG_MACROS_HXX_ + +//_______________________________________________ + +#include <rtl/ustring.hxx> + +#ifdef _FILTER_CONFIG_FROM_ASCII_ + #error "who already defined such macro :-(" +#endif + +#ifdef _FILTER_CONFIG_TO_ASCII_ + #error "who already defined such macro :-(" +#endif + +/* +//#define _FILTER_CONFIG_FROM_ASCII_(ASCII_STRING) \ +// ::rtl::OUString::createFromAscii(ASCII_STRING) +*/ + +#define _FILTER_CONFIG_FROM_ASCII_(ASCII_STRING) \ + ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ASCII_STRING)) + +#define _FILTER_CONFIG_TO_ASCII_(UNICODE_STRING) \ + ::rtl::OUStringToOString(UNICODE_STRING, RTL_TEXTENCODING_UTF8).getStr() + +#define _FILTER_CONFIG_LOG_(TEXT) +#define _FILTER_CONFIG_LOG_1_(FORMAT, ARG1) +#define _FILTER_CONFIG_LOG_2_(FORMAT, ARG1, ARG2) +#define _FILTER_CONFIG_LOG_3_(FORMAT, ARG1, ARG2, ARG3) + +/* +#include <rtl/ustrbuf.hxx> + +#include <stdio.h> + +//_______________________________________________ + + #ifdef _FILTER_CONFIG_LOG_ + #error "who already defined such macro :-(" + #endif + + #ifdef _FILTER_CONFIG_LOG_1_ + #error "who already defined such macro :-(" + #endif + + #ifdef _FILTER_CONFIG_LOG_2_ + #error "who already defined such macro :-(" + #endif + + #ifdef _FILTER_CONFIG_LOG_3_ + #error "who already defined such macro :-(" + #endif + + //------------------------------------------- + // @short append given text to the log file + // + // @param TEXT [const char*] + // contains the text, which should be logged + // + #define _FILTER_CONFIG_LOG_(TEXT) \ + { \ + FILE* pFile = fopen("filtercache.log", "a");\ + fprintf(pFile, "%s", TEXT); \ + fclose(pFile); \ + } + + //------------------------------------------- + // @short append given text to the log file + // and supports using one optional argument. + // + // @descr The syntax of FORMAT and ARG1 follows the + // mechanism of e.g. sprintf(); + // + // @param FORMAT [const char*] + // specify the format of the log message + // + // @param ARGn + // points to any argument(s), which will be used + // inside the FORMAT string to replace place holder(s). + // + #define _FILTER_CONFIG_LOG_1_(FORMAT, ARG1) \ + { \ + FILE* pFile = fopen("filtercache.log", "a");\ + fprintf(pFile, FORMAT, ARG1); \ + fclose(pFile); \ + } + + #define _FILTER_CONFIG_LOG_2_(FORMAT, ARG1, ARG2) \ + { \ + FILE* pFile = fopen("filtercache.log", "a");\ + fprintf(pFile, FORMAT, ARG1, ARG2); \ + fclose(pFile); \ + } + + #define _FILTER_CONFIG_LOG_3_(FORMAT, ARG1, ARG2, ARG3) \ + { \ + FILE* pFile = fopen("filtercache.log", "a");\ + fprintf(pFile, FORMAT, ARG1, ARG2, ARG3); \ + fclose(pFile); \ + } + +#endif // OSL_DEBUG_LEVEL < 2 +*/ +#endif // _FILTER_CONFIG_MACROS_HXX_ diff --git a/filter/source/config/cache/makefile.mk b/filter/source/config/cache/makefile.mk new file mode 100644 index 000000000000..fbc4806b0a32 --- /dev/null +++ b/filter/source/config/cache/makefile.mk @@ -0,0 +1,79 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ = ..$/..$/.. + +PRJNAME = filter +TARGET = filterconfig +ENABLE_EXCEPTIONS = TRUE +VERSION = 1 +USE_DEFFILE = TRUE +LIBTARGET = NO + +# --- Settings ---------------------------------- + +.INCLUDE : settings.mk + +# --- Library ----------------------------------- + +SHL1TARGET= $(TARGET)$(VERSION) + +SLOFILES= \ + $(SLO)$/configflush.obj \ + $(SLO)$/basecontainer.obj \ + $(SLO)$/cacheitem.obj \ + $(SLO)$/contenthandlerfactory.obj \ + $(SLO)$/filtercache.obj \ + $(SLO)$/filterfactory.obj \ + $(SLO)$/frameloaderfactory.obj \ + $(SLO)$/lateinitlistener.obj \ + $(SLO)$/lateinitthread.obj \ + $(SLO)$/querytokenizer.obj \ + $(SLO)$/registration.obj \ + $(SLO)$/typedetection.obj \ + $(SLO)$/cacheupdatelistener.obj + +SHL1OBJS= $(SLOFILES) + +SHL1STDLIBS= \ + $(COMPHELPERLIB) \ + $(CPPUHELPERLIB) \ + $(CPPULIB) \ + $(SALLIB) \ + $(TOOLSLIB) \ + $(UNOTOOLSLIB) \ + $(FWELIB) + +DEF1NAME= $(SHL1TARGET) +SHL1DEF= $(MISC)$/$(SHL1TARGET).def +SHL1DEPN= +SHL1IMPLIB= i$(SHL1TARGET) +SHL1VERSIONMAP= $(SOLARENV)/src/component.map + +# --- Targets ---------------------------------- + +.INCLUDE : target.mk diff --git a/filter/source/config/cache/querytokenizer.cxx b/filter/source/config/cache/querytokenizer.cxx new file mode 100644 index 000000000000..a07a95e37d23 --- /dev/null +++ b/filter/source/config/cache/querytokenizer.cxx @@ -0,0 +1,99 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "querytokenizer.hxx" + +//_______________________________________________ +// includes + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +/*----------------------------------------------- + 01.08.2003 10:42 +-----------------------------------------------*/ +QueryTokenizer::QueryTokenizer(const ::rtl::OUString& sQuery) + : m_bValid(sal_True) +{ + sal_Int32 token = 0; + while(token != -1) + { + ::rtl::OUString sToken = sQuery.getToken(0, ':', token); + if (sToken.getLength()) + { + sal_Int32 equal = sToken.indexOf('='); + + if (equal == 0) + m_bValid = sal_False; + OSL_ENSURE(m_bValid, "QueryTokenizer::QueryTokenizer()\nFound non boolean query parameter ... but its key is empty. Will be ignored!\n"); + + ::rtl::OUString sKey; + ::rtl::OUString sVal; + + sKey = sToken; + if (equal > 0) + { + sKey = sToken.copy(0 , equal ); + sVal = sToken.copy(equal+1, sToken.getLength()-(equal+1)); + } + + if (find(sKey) != end()) + m_bValid = sal_False; + OSL_ENSURE(m_bValid, "QueryTokenizer::QueryTokenizer()\nQuery contains same param more then once. Last one wins :-)\n"); + + (*this)[sKey] = sVal; + } + } +} + +/*----------------------------------------------- + 01.08.2003 10:28 +-----------------------------------------------*/ +QueryTokenizer::~QueryTokenizer() +{ + /*TODO*/ +} + +/*----------------------------------------------- + 01.08.2003 10:53 +-----------------------------------------------*/ +sal_Bool QueryTokenizer::valid() const +{ + return m_bValid; +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/querytokenizer.hxx b/filter/source/config/cache/querytokenizer.hxx new file mode 100644 index 000000000000..0823e49f5616 --- /dev/null +++ b/filter/source/config/cache/querytokenizer.hxx @@ -0,0 +1,115 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef _FILTER_CONFIG_QUERYTOKENIZER_HXX_ +#define _FILTER_CONFIG_QUERYTOKENIZER_HXX_ + +//_______________________________________________ +// includes + +#include <hash_map> +#include <rtl/ustring.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +//_______________________________________________ +// definitions + +/** @short It can be used to split any query string (which can be used at the + related interface <type scope="com::sun::star::container">XContainerQuery</type>) + into its different tokens using a fix schema. + + @descr All queries implemented of the services + <ul> + <li><type scope="com::sun::star::document">TypeDetection</type></li> + <li><type scope="com::sun::star::document">FilterFactory</type></li> + <li><type scope="com::sun::star::document">ExtendedTypeDetectionFactory</type></li> + <li><type scope="com::sun::star::frame">FrameLoaderFactory</type></li> + <li><type scope="com::sun::star::frame">ContentHandlerFactory</type></li> + </ul> + uses this schema. + + @attention This class is not threadsafe implemented. Because its not neccessary. + But you have to make shure, that ist not used as such :-) + */ +class QueryTokenizer : public ::std::hash_map< ::rtl::OUString , + ::rtl::OUString , + ::rtl::OUStringHash , + ::std::equal_to< ::rtl::OUString > > +{ + //------------------------------------------- + // member + + private: + + /** @short Because the given query can contain errors, + it should be checked outside. + + TODO May its a good idea to describe the real problem + more detailed ... + */ + sal_Bool m_bValid; + + //------------------------------------------- + // interface + + public: + + /** @short create a new tokenizer instance with a + a new query. + + @descr The given query is immidiatly analyzed + and seperated into its token, which can + be access by some specialized method later. + + @param sQuery + the query string. + */ + QueryTokenizer(const ::rtl::OUString& sQuery); + + //--------------------------------------- + + /** @short destruct an instance of this class. + */ + virtual ~QueryTokenizer(); + + //--------------------------------------- + + /** @short can be used to check if analyzing of given query + was successfully or not. + */ + virtual sal_Bool valid() const; +}; + + } // namespace config +} // namespace filter + +#endif // _FILTER_CONFIG_QUERYTOKENIZER_HXX_ diff --git a/filter/source/config/cache/registration.cxx b/filter/source/config/cache/registration.cxx new file mode 100644 index 000000000000..a65f5c42fea8 --- /dev/null +++ b/filter/source/config/cache/registration.cxx @@ -0,0 +1,147 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" + +#include "registration.hxx" + +//_______________________________________________ +// includes + +#ifdef _FILTER_CONFIG_CONSTANT_HXX_ +# error "Already included constant.hxx" +#else +# define PROPNAME_IMPL_DECL +# include "constant.hxx" +#endif +#include <stdio.h> +#include "typedetection.hxx" +#include "filterfactory.hxx" +#include "contenthandlerfactory.hxx" +#include "frameloaderfactory.hxx" +#include "configflush.hxx" + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +rtl::OUString pFilterStrings[19]; +static bool bInitialized = false; + +static void InitConstants() +{ + if (!bInitialized) + { + ::osl::MutexGuard aGuard(::osl::Mutex::getGlobalMutex()); + if (!bInitialized) + { + PROPNAME_NAME; + PROPNAME_UINAME; + PROPNAME_UINAMES; + PROPNAME_PREFERRED; + PROPNAME_PREFERREDFILTER; + PROPNAME_DETECTSERVICE; + PROPNAME_MEDIATYPE; + PROPNAME_CLIPBOARDFORMAT; + PROPNAME_URLPATTERN; + PROPNAME_EXTENSIONS; + PROPNAME_TYPE; + PROPNAME_DOCUMENTSERVICE; + PROPNAME_FILTERSERVICE; + PROPNAME_UICOMPONENT; + PROPNAME_FLAGS; + PROPNAME_USERDATA; + PROPNAME_TEMPLATENAME; + PROPNAME_FILEFORMATVERSION; + PROPNAME_TYPES; + bInitialized = true; + } + } +} + +// extern "C" component_getImplementationEnvironment() +_COMPHELPER_COMPONENT_GETIMPLEMENTATIONENVIRONMENT + +// extern "C" component_writeInfo() +_COMPHELPER_COMPONENT_WRITEINFO +( + _COMPHELPER_COMPONENTINFO( TypeDetection , + TypeDetection::impl_getImplementationName() , + TypeDetection::impl_getSupportedServiceNames()) + + _COMPHELPER_COMPONENTINFO( FilterFactory , + FilterFactory::impl_getImplementationName() , + FilterFactory::impl_getSupportedServiceNames()) + + _COMPHELPER_COMPONENTINFO( ContentHandlerFactory , + ContentHandlerFactory::impl_getImplementationName() , + ContentHandlerFactory::impl_getSupportedServiceNames()) + + _COMPHELPER_COMPONENTINFO( FrameLoaderFactory , + FrameLoaderFactory::impl_getImplementationName() , + FrameLoaderFactory::impl_getSupportedServiceNames()) + + _COMPHELPER_COMPONENTINFO( ConfigFlush , + ConfigFlush::impl_getImplementationName() , + ConfigFlush::impl_getSupportedServiceNames()) +) + +// extern "C" component_getFactory() +_COMPHELPER_COMPONENT_GETFACTORY +( + { InitConstants(); }, + _COMPHELPER_MULTIINSTANCEFACTORY( TypeDetection::impl_getImplementationName() , + TypeDetection::impl_getSupportedServiceNames(), + TypeDetection::impl_createInstance ) + + _COMPHELPER_MULTIINSTANCEFACTORY( FilterFactory::impl_getImplementationName() , + FilterFactory::impl_getSupportedServiceNames(), + FilterFactory::impl_createInstance ) + + _COMPHELPER_MULTIINSTANCEFACTORY( ContentHandlerFactory::impl_getImplementationName() , + ContentHandlerFactory::impl_getSupportedServiceNames(), + ContentHandlerFactory::impl_createInstance ) + + _COMPHELPER_MULTIINSTANCEFACTORY( FrameLoaderFactory::impl_getImplementationName() , + FrameLoaderFactory::impl_getSupportedServiceNames(), + FrameLoaderFactory::impl_createInstance ) + + _COMPHELPER_ONEINSTANCEFACTORY( ConfigFlush::impl_getImplementationName() , + ConfigFlush::impl_getSupportedServiceNames(), + ConfigFlush::impl_createInstance ) +) + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/registration.hxx b/filter/source/config/cache/registration.hxx new file mode 100644 index 000000000000..38e5980c967a --- /dev/null +++ b/filter/source/config/cache/registration.hxx @@ -0,0 +1,214 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __COMPHELPER_REGISTRATION_HXX_ +#define __COMPHELPER_REGISTRATION_HXX_ + +//_______________________________________________ +// includes + +#include <com/sun/star/registry/XRegistryKey.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/registry/InvalidRegistryException.hpp> +#include <rtl/ustrbuf.hxx> +#include <cppuhelper/factory.hxx> + +//_______________________________________________ +// namespace + +namespace comphelper{ + +//_______________________________________________ +// declaration + +//_______________________________________________ + +/** TODO doc + */ +#define _COMPHELPER_COMPONENT_GETIMPLEMENTATIONENVIRONMENT \ + extern "C" void SAL_CALL component_getImplementationEnvironment(const sal_Char** ppEnvironmentTypeName, \ + uno_Environment** /* ppEnvironment */ ) \ + { \ + *ppEnvironmentTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; \ + } + +//_______________________________________________ + +/** @short creates a new key inside component registry. + + @descr using: a) _COMPHELPER_COMPONENTINFO( MyClass, + MyClass::st_getImplName(), + MyClass::st_getServNames()) + + b) _COMPHELPER_COMPONENTINFO( MyClass, + ::rtl::OUString::createFromAscii("css.MyClass"), + lServiceNames) + + @param CLASS + must be the class name of the implementation + of an uno service, which should be registered here. + + @param IMPLEMENTATIONNAME + can be an uno implementation name from type [::rtl::OUString] + directly or any possible method call, which returns such + name. + + @param SERVICENAME + a list of supported uno service names from type + [css::uno::Sequence< ::rtl::OUString >] + or any possible method call, which returns such + list. + */ +#define _COMPHELPER_COMPONENTINFO(CLASS, IMPLEMENTATIONNAME, SERVICENAMES) \ + /*define new scope to prevent multiple using of the same variables ... */ \ + { \ + /* build new key name */ \ + ::rtl::OUStringBuffer sKeyBuf(256); \ + sKeyBuf.appendAscii("/" ); \ + sKeyBuf.append (IMPLEMENTATIONNAME); \ + sKeyBuf.appendAscii("/UNO/SERVICES" ); \ + ::rtl::OUString sKey = sKeyBuf.makeStringAndClear(); \ + \ + /* try to register this service ... thrown exception will be catched by COMPONENT_WRITEINFO! */ \ + css::uno::Reference< css::registry::XRegistryKey > xKey = xRoot->createKey(sKey); \ + if (!xKey.is()) \ + throw css::registry::InvalidRegistryException(sKey, css::uno::Reference< css::uno::XInterface >()); \ + \ + /* dont optimize it! it must work for simple types and function calls! */ \ + const css::uno::Sequence< ::rtl::OUString > lServiceNames = SERVICENAMES; \ + const ::rtl::OUString* pServiceNames = lServiceNames.getConstArray(); \ + sal_Int32 nCount = lServiceNames.getLength(); \ + \ + for (sal_Int32 i=0; i<nCount; ++i) \ + xKey->createKey(pServiceNames[i]); \ + } + +//_______________________________________________ + +/** @short implments extern C function component_writeInfo + + @descr using: _COMPHELPER_COMPONENT_WRITEINFO + ( + _COMPHELPER_COMPONENTINFO(...) + .. + _COMPHELPER_COMPONENTINFO(...) + ) + + @param INFOLIST + list of macros of type COMPONENTINFO without(!) any + seperator signs between two elements. + */ +#define _COMPHELPER_COMPONENT_WRITEINFO(INFOLIST) \ + extern "C" sal_Bool SAL_CALL component_writeInfo(void* pServiceManager, \ + void* pRegistryKey ) \ + { \ + if (!pServiceManager || !pRegistryKey) \ + return sal_False; \ + \ + css::uno::Reference< css::registry::XRegistryKey > xRoot = reinterpret_cast< css::registry::XRegistryKey* >(pRegistryKey); \ + \ + /*if one of following registration will fail ... an exception is thrown! */ \ + try \ + { \ + /* This parameter will expand to: */ \ + /* _COMPHELPER_COMPONENTINFO(1) */ \ + /* ... */ \ + /* _COMPHELPER_COMPONENTINFO(n) */ \ + INFOLIST \ + } \ + catch(const css::registry::InvalidRegistryException&) \ + { \ + return sal_False; \ + } \ + return sal_True; \ + } + +//_______________________________________________ + +/** TODO doc + */ +#define _COMPHELPER_MULTIINSTANCEFACTORY(IMPLEMENTATIONNAME, SERVICENAMES, FACTORYMETHOD) \ + if (IMPLEMENTATIONNAME == sImplName) \ + xFactory = ::cppu::createSingleFactory(xSMGR , \ + IMPLEMENTATIONNAME, \ + FACTORYMETHOD , \ + SERVICENAMES ); + +//_______________________________________________ + +/** TODO doc + */ +#define _COMPHELPER_ONEINSTANCEFACTORY(IMPLEMENTATIONNAME, SERVICENAMES, FACTORYMETHOD) \ + if (IMPLEMENTATIONNAME == sImplName) \ + xFactory = ::cppu::createOneInstanceFactory(xSMGR , \ + IMPLEMENTATIONNAME, \ + FACTORYMETHOD , \ + SERVICENAMES ); + +//_______________________________________________ + +/** TODO doc + */ +#define _COMPHELPER_COMPONENT_GETFACTORY(STATIC_INIT,FACTORYLIST) \ + extern "C" void* SAL_CALL component_getFactory(const sal_Char* pImplementationName, \ + void* pServiceManager , \ + void* /* pRegistryKey */ ) \ + { \ + if ( \ + (!pImplementationName) || \ + (!pServiceManager ) \ + ) \ + return NULL; \ + \ + STATIC_INIT \ + \ + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = reinterpret_cast< css::lang::XMultiServiceFactory* >(pServiceManager); \ + css::uno::Reference< css::lang::XSingleServiceFactory > xFactory ; \ + rtl::OUString sImplName = ::rtl::OUString::createFromAscii(pImplementationName); \ + \ + /* This parameter will expand to: */ \ + /* _COMPHELPER_xxxFACTORY(1) */ \ + /* else */ \ + /* ... */ \ + /* else */ \ + /* _COMPHELPER_xxxFACTORY(n) */ \ + FACTORYLIST \ + \ + /* And if one of these checks was successfully => xFactory was set! */ \ + if (xFactory.is()) \ + { \ + xFactory->acquire(); \ + return xFactory.get(); \ + } \ + \ + return NULL; \ + } + +} // namespace comphelper + +#endif // #ifndef __COMPHELPER_REGISTRATION_HXX_ diff --git a/filter/source/config/cache/typedetection.cxx b/filter/source/config/cache/typedetection.cxx new file mode 100644 index 000000000000..4fe9a1df64e6 --- /dev/null +++ b/filter/source/config/cache/typedetection.cxx @@ -0,0 +1,1257 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_filter.hxx" +#include "typedetection.hxx" +#include "constant.hxx" + +//_______________________________________________ +// includes +#include <com/sun/star/document/XExtendedFilterDetection.hpp> +#include <com/sun/star/util/XURLTransformer.hpp> + +#ifndef _COM_SUN_STAR_IO_XINPUSTREAM_HPP_ +#include <com/sun/star/io/XInputStream.hpp> +#endif +#include <com/sun/star/io/XSeekable.hpp> +#include <com/sun/star/task/XInteractionHandler.hpp> +#include <tools/wldcrd.hxx> +#include <rtl/ustrbuf.hxx> +#include <framework/interaction.hxx> +#include <tools/urlobj.hxx> +#include <unotools/localfilehelper.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +// Use this switch to change the behaviour of preselection DocumentService ... (see using for further informations) +#define IGNORE_NON_URLMATCHING_TYPES_FOR_PRESELECTION_DOCUMENTSERVICE + +// enable/disable special handling for CSV/TXT problem +#define WORKAROUND_CSV_TXT_BUG_i60158 + +/*----------------------------------------------- + 03.07.2003 11:25 +-----------------------------------------------*/ +TypeDetection::TypeDetection(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + BaseContainer::init(xSMGR , + TypeDetection::impl_getImplementationName() , + TypeDetection::impl_getSupportedServiceNames(), + FilterCache::E_TYPE ); +} + +/*----------------------------------------------- + 03.07.2003 10:36 +-----------------------------------------------*/ +TypeDetection::~TypeDetection() +{ +} + +/*----------------------------------------------- + 03.11.2003 08:43 +-----------------------------------------------*/ +::rtl::OUString SAL_CALL TypeDetection::queryTypeByURL(const ::rtl::OUString& sURL) + throw (css::uno::RuntimeException) +{ + ::rtl::OUString sType; + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + css::util::URL aURL; + aURL.Complete = sURL; + css::uno::Reference< css::util::XURLTransformer > xParser(m_xSMGR->createInstance(SERVICE_URLTRANSFORMER), css::uno::UNO_QUERY); + xParser->parseStrict(aURL); + + // set std types as minimum requirement first! + // Only in case no type was found for given URL, + // use optional types too ... + FlatDetection lFlatTypes; + m_rCache->detectFlatForURL(aURL, lFlatTypes); + + if ( + (lFlatTypes.size() < 1 ) && + (!m_rCache->isFillState(FilterCache::E_CONTAINS_TYPES)) + ) + { + m_rCache->load(FilterCache::E_CONTAINS_TYPES); + m_rCache->detectFlatForURL(aURL, lFlatTypes); + } + + // first item is guaranteed as "preferred" one! + if (lFlatTypes.size() > 0) + { + const FlatDetectionInfo& aMatch = *(lFlatTypes.begin()); + sType = aMatch.sType; + } + + return sType; + // <- SAFE +} + +/*----------------------------------------------- + 31.10.2003 09:36 +-----------------------------------------------*/ +::rtl::OUString SAL_CALL TypeDetection::queryTypeByDescriptor(css::uno::Sequence< css::beans::PropertyValue >& lDescriptor, + sal_Bool bAllowDeep ) + throw (css::uno::RuntimeException) +{ + // make the descriptor more useable :-) + ::comphelper::MediaDescriptor stlDescriptor(lDescriptor); + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + //******************************************* + // parse given URL to split it into e.g. main and jump marks ... + ::rtl::OUString sURL = stlDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_URL(), ::rtl::OUString()); + +#if OSL_DEBUG_LEVEL > 0 + if (stlDescriptor.find(::rtl::OUString::createFromAscii("FileName")) != stlDescriptor.end()) + OSL_ENSURE(sal_False, "Detect using of deprecated and already unsupported MediaDescriptor property \"FileName\"!"); +#endif + + css::util::URL aURL; + aURL.Complete = sURL; + css::uno::Reference< css::util::XURLTransformer > xParser(m_xSMGR->createInstance(SERVICE_URLTRANSFORMER), css::uno::UNO_QUERY); + xParser->parseStrict(aURL); + + //******************************************* + // preselected filter, type or document service? + // use it as first "flat" detected type later! + FlatDetection lFlatTypes; + impl_getPreselection(aURL, stlDescriptor, lFlatTypes); + + //******************************************* + // get all types, which match to the given descriptor + // That can be true by: extensions/url pattern/mime type etcpp. + m_rCache->detectFlatForURL(aURL, lFlatTypes); + + aLock.clear(); + // <- SAFE ---------------------------------- + + ::rtl::OUString sType ; + ::rtl::OUString sLastChance; + + try + { + //******************************************* + // verify every flat detected (or preselected!) type + // by calling its registered deep detection service. + // But break this loop if a type match to the given descriptor + // by an URL pattern(!) or if deep detection isnt allowed from + // outside (bAllowDeep=FALSE) or break the whole detection by + // throwing an exception if creation of the might needed input + // stream failed by e.g. an IO exception ... + OUStringList lUsedDetectors; + if (lFlatTypes.size()>0) + sType = impl_detectTypeFlatAndDeep(stlDescriptor, lFlatTypes, bAllowDeep, lUsedDetectors, sLastChance); + + //******************************************* + // if no flat detected (nor preselected!) type could be + // verified and no error occured during creation of + // the might needed input stream, start detection + // which uses all registered deep detection services. + if ( + (!sType.getLength()) && + (bAllowDeep ) + ) + { + sType = impl_detectTypeDeepOnly(stlDescriptor, lUsedDetectors); + } + + //******************************************* + // flat detection failed + // pure deep detection failed + // => ask might existing InteractionHandler + // means: ask user for it's decision + if (!sType.getLength()) + sType = impl_askUserForTypeAndFilterIfAllowed(stlDescriptor); + + //******************************************* + // no real detected type - but a might valid one. + // update descriptor and set last chance for return. + if (!sType.getLength() && sLastChance.getLength()) + { + OSL_ENSURE(sal_False, "set first flat detected type without a registered deep detection service as \"last chance\" ... nevertheless some other deep detections said \"NO\". I TRY IT!"); + sType = sLastChance; + } + } + catch(const css::uno::RuntimeException&) + { throw; } + catch(const css::uno::Exception&) + { sType = ::rtl::OUString(); } + + //******************************************* + // adapt media descriptor, so it contains the right values + // for type/filter name/document service/ etcpp. + impl_checkResultsAndAddBestFilter(stlDescriptor, sType); // Attention: sType is used as IN/OUT param here and will might be changed inside this method !!! + impl_validateAndSetTypeOnDescriptor(stlDescriptor, sType); + + stlDescriptor >> lDescriptor; + return sType; +} + +/*----------------------------------------------- + 03.07.2003 10:36 +-----------------------------------------------*/ +void TypeDetection::impl_checkResultsAndAddBestFilter(::comphelper::MediaDescriptor& rDescriptor, + ::rtl::OUString& sType ) +{ + // a) + // Dont overwrite a might preselected filter! + ::rtl::OUString sFilter = rDescriptor.getUnpackedValueOrDefault( + ::comphelper::MediaDescriptor::PROP_FILTERNAME(), + ::rtl::OUString()); + if (sFilter.getLength()) + return; + + // b) + // check a preselected document service too. + // Then we have to search a suitable filter witin this module. + ::rtl::OUString sDocumentService = rDescriptor.getUnpackedValueOrDefault( + ::comphelper::MediaDescriptor::PROP_DOCUMENTSERVICE(), + ::rtl::OUString()); + if (sDocumentService.getLength()) + { + try + { + ::rtl::OUString sRealType = sType; + + #ifdef WORKAROUND_CSV_TXT_BUG_i60158 + // Workaround for #i60158# + // We do not have right filter for Text_Ascii in calc nor a suitable filter for CSV in writer. + // So we must overrule our detection and make the right things. Normaly we should have + // one type TextAscii and two filters registered for these one type. + // But then we loose automatic opening of CSV files in calc instead of opening these files + // inside writer. + if ( + (sDocumentService.equalsAscii("com.sun.star.sheet.SpreadsheetDocument")) && + ( + (sRealType.equalsAscii("writer_Text" )) || + (sRealType.equalsAscii("writer_Text_encoded")) + ) + ) + { + sRealType = ::rtl::OUString::createFromAscii("calc_Text_txt_csv_StarCalc"); + } + else + if ( + (sDocumentService.equalsAscii("com.sun.star.text.TextDocument")) && + (sRealType.equalsAscii("calc_Text_txt_csv_StarCalc" )) + ) + { + sRealType = ::rtl::OUString::createFromAscii("writer_Text"); + } + #endif // WORKAROUND_CSV_TXT_BUG_i60158 + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // Attention: For executing next lines of code, We must be shure that + // all filters already loaded :-( + // That can disturb our "load on demand feature". But we have no other chance! + m_rCache->load(FilterCache::E_CONTAINS_FILTERS); + + CacheItem lIProps; + lIProps[PROPNAME_DOCUMENTSERVICE] <<= sDocumentService; + lIProps[PROPNAME_TYPE ] <<= sRealType; + OUStringList lFilters = m_rCache->getMatchingItemsByProps(FilterCache::E_FILTER, lIProps); + + aLock.clear(); + // <- SAFE + + for ( OUStringList::const_iterator pIt = lFilters.begin(); + pIt != lFilters.end() && sFilter.getLength() == 0 ; + ++pIt ) + { + // SAFE -> + aLock.reset(); + try + { + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, *pIt); + sal_Int32 nFlags = 0; + aFilter[PROPNAME_FLAGS] >>= nFlags; + + if ((nFlags & FLAGVAL_IMPORT) == FLAGVAL_IMPORT) + sFilter = *pIt; + } + catch(const css::uno::Exception&) {} + aLock.clear(); + // <- SAFE + } + + if (sFilter.getLength() > 0) + { + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME() ] <<= sRealType; + rDescriptor[::comphelper::MediaDescriptor::PROP_FILTERNAME()] <<= sFilter; + sType = sRealType; + return; + } + } + catch(const css::uno::Exception&) + {} + } + + // c) + // We can use the preferred filter for the specified type. + // Such preferred filter points: + // - to the default filter of the preferred application + // - or to any other filter if no preferred filter was set. + // Note: It's an optimization only! + // It's not guaranteed, that such preferred filter exists. + sFilter = ::rtl::OUString(); + try + { + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + CacheItem aType = m_rCache->getItem(FilterCache::E_TYPE, sType); + aType[PROPNAME_PREFERREDFILTER] >>= sFilter; + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, sFilter); + + aLock.clear(); + // <- SAFE + + // no exception => found valid type and filter => set it on the given descriptor + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME() ] <<= sType ; + rDescriptor[::comphelper::MediaDescriptor::PROP_FILTERNAME()] <<= sFilter; + return; + } + catch(const css::uno::Exception&) + {} + + // d) + // Search for any import(!) filter, which is registered for this type. + sFilter = ::rtl::OUString(); + try + { + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + // Attention: For executing next lines of code, We must be shure that + // all filters already loaded :-( + // That can disturb our "load on demand feature". But we have no other chance! + m_rCache->load(FilterCache::E_CONTAINS_FILTERS); + + CacheItem lIProps; + lIProps[PROPNAME_TYPE] <<= sType; + OUStringList lFilters = m_rCache->getMatchingItemsByProps(FilterCache::E_FILTER, lIProps); + + aLock.clear(); + // <- SAFE + + OUStringList::const_iterator pIt; + for ( pIt = lFilters.begin(); + pIt != lFilters.end() ; + ++pIt ) + { + sFilter = *pIt; + + // SAFE -> + aLock.reset(); + try + { + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, sFilter); + sal_Int32 nFlags = 0; + aFilter[PROPNAME_FLAGS] >>= nFlags; + + if ((nFlags & FLAGVAL_IMPORT) == FLAGVAL_IMPORT) + break; + } + catch(const css::uno::Exception&) + { continue; } + aLock.clear(); + // <- SAFE + + sFilter = ::rtl::OUString(); + } + + if (sFilter.getLength()) + { + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME() ] <<= sType ; + rDescriptor[::comphelper::MediaDescriptor::PROP_FILTERNAME()] <<= sFilter; + return; + } + } + catch(const css::uno::Exception&) + {} +} + +/*----------------------------------------------- + 14.11.2003 12:06 +-----------------------------------------------*/ +sal_Bool TypeDetection::impl_getPreselectionForType(const ::rtl::OUString& sPreSelType, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ) +{ + // Can be used to supress execution of some parts of this method + // if its already clear that detected type is valid or not. + // Its neccessary to use shared code at the end, which update + // all return parameters constistency! + sal_Bool bBreakDetection = sal_False; + + // Further we must know if it matches by pattern + // Every flat detected type by pattern wont be detected deep! + sal_Bool bMatchByPattern = sal_False; + + // And we must know if a preselection must be preferred, because + // it matches by it's extension too. + sal_Bool bMatchByExtension = sal_False; + + // If we e.g. collect all filters of a factory (be a forced factory preselection) + // we should preferr all filters of this factory, where the type match the given URL. + // All other types (which sorrespond to filters of the same factory - but dont match + // the URL) should be "used later" for detection and sorted at the end of our return vector + // rFlatTypes! + // => bPreferredPreselection = (matchByExtension || matchByURLPattern) + sal_Bool bPreferredPreselection = sal_False; + + // validate type + ::rtl::OUString sType(sPreSelType); + CacheItem aType; + try + { + // SAFE -> -------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + aType = m_rCache->getItem(FilterCache::E_TYPE, sType); + aLock.clear(); + // <- SAFE -------------------------- + } + catch(const css::container::NoSuchElementException&) + { + sType = ::rtl::OUString(); + bBreakDetection = sal_True; + } + + if (!bBreakDetection) + { + // We cant check a preselected type for a given stream! + // So we must believe, that it can work ... + if (aParsedURL.Complete.equalsAsciiL("private:stream", 14)) + bBreakDetection = sal_True; + } + + if (!bBreakDetection) + { + // extract extension from URL .. to check it case-insensitive ! + INetURLObject aParser (aParsedURL.Main); + ::rtl::OUString sExtension = aParser.getExtension(INetURLObject::LAST_SEGMENT , + sal_True , + INetURLObject::DECODE_WITH_CHARSET); + sExtension = sExtension.toAsciiLowerCase(); + + // otherwhise we must know, if it matches to the given URL realy. + // especialy if it matches by its extension or pattern registration. + OUStringList lExtensions(aType[PROPNAME_EXTENSIONS]); + OUStringList lURLPattern(aType[PROPNAME_URLPATTERN]); + + for (OUStringList::const_iterator pIt = lExtensions.begin(); + pIt != lExtensions.end() ; + ++pIt ) + { + ::rtl::OUString sCheckExtension(pIt->toAsciiLowerCase()); + if (sCheckExtension.equals(sExtension)) + { + bBreakDetection = sal_True; + bMatchByExtension = sal_True; + bPreferredPreselection = sal_True; + break; + } + } + + if (!bBreakDetection) + { + for (OUStringList::const_iterator pIt = lURLPattern.begin(); + pIt != lURLPattern.end() ; + ++pIt ) + { + WildCard aCheck(*pIt); + if (aCheck.Matches(aParsedURL.Main)) + { + bBreakDetection = sal_True; + bMatchByPattern = sal_True; + bPreferredPreselection = sal_True; + break; + } + } + } + + /* + Comment ... why the following line of code should be comened out .-) + + This type does not seem to fit the requirements + But its an existing and well known type. + At least - [because may be the extension was missing :-( ] + we should try to detect this type deep ... + So we accept it here :-) + + if (!bBreakDetection) + sType = ::rtl::OUString(); + */ + } + + // if its a valid type - set it on all return values! + if (sType.getLength()) + { + FlatDetectionInfo aInfo; + aInfo.sType = sType; + aInfo.bMatchByExtension = bMatchByExtension; + aInfo.bMatchByPattern = bMatchByPattern; + aInfo.bPreselectedAsType = sal_True; + + if (bPreferredPreselection) + rFlatTypes.push_front(aInfo); + else + rFlatTypes.push_back(aInfo); + + return sal_True; + } + + // not valid! + return sal_False; +} + +/*----------------------------------------------- + 14.11.2003 12:09 +-----------------------------------------------*/ +sal_Bool TypeDetection::impl_getPreselectionForFilter(const ::rtl::OUString& sPreSelFilter, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ) +{ + // Can be used to supress execution of some parts of this method + // if its already clear that detected filter is valid or not. + // Its neccessary to use shared code at the end, which update + // all return parameters constistency! + sal_Bool bBreakDetection = sal_False; + + // validate filter + ::rtl::OUString sFilter(sPreSelFilter); + CacheItem aFilter; + try + { + // SAFE -> -------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + aFilter = m_rCache->getItem(FilterCache::E_FILTER, sFilter); + aLock.clear(); + // <- SAFE -------------------------- + } + catch(const css::container::NoSuchElementException&) + { + sFilter = ::rtl::OUString(); + bBreakDetection = sal_True; + } + + if (!bBreakDetection) + { + // get its type and check if it matches the given URL + ::rtl::OUString sType; + aFilter[PROPNAME_TYPE] >>= sType; + + bBreakDetection = impl_getPreselectionForType(sType, aParsedURL, rFlatTypes); + + // not a valid type? -> not a valid filter! + if (!bBreakDetection) + sFilter = ::rtl::OUString(); + } + + // We have to mark all retrieved preselection items as "preselected by filter"! + FlatDetection::iterator pIt; + for ( pIt = rFlatTypes.begin(); + pIt != rFlatTypes.end() ; + ++pIt ) + { + FlatDetectionInfo& rInfo = *pIt; + rInfo.bPreselectedAsType = sal_False; + rInfo.bPreselectedByFilter = sal_True; + } + + if (sFilter.getLength()) + return sal_True; + else + return sal_False; +} + +/*----------------------------------------------- + 14.11.2003 12:11 +-----------------------------------------------*/ +sal_Bool TypeDetection::impl_getPreselectionForDocumentService(const ::rtl::OUString& sPreSelDocumentService, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ) +{ + // get all filters, which match to this doc service + OUStringList lFilters; + try + { + // SAFE -> -------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + + // Attention: For executing next lines of code, We must be shure that + // all filters already loaded :-( + // That can disturb our "load on demand feature". But we have no other chance! + m_rCache->load(FilterCache::E_CONTAINS_FILTERS); + + CacheItem lIProps; + lIProps[PROPNAME_DOCUMENTSERVICE] <<= sPreSelDocumentService; + lFilters = m_rCache->getMatchingItemsByProps(FilterCache::E_FILTER, lIProps); + + aLock.clear(); + // <- SAFE -------------------------- + } + catch(const css::container::NoSuchElementException&) + { + lFilters.clear(); + } + + // step over all filters, and check if its registered type + // match the given URL. + // But use temp. list of "preselected types" instead of incoming rFlatTypes list! + // The reason behind: we must filter the getted results. And copying of stl entries + // is an easier job then removing it .-) + FlatDetection lPreselections; + for (OUStringList::const_iterator pFilter = lFilters.begin(); + pFilter != lFilters.end() ; + ++pFilter ) + { + const ::rtl::OUString sFilter = *pFilter; + impl_getPreselectionForFilter(sFilter, aParsedURL, lPreselections); + } + + // We have to mark all retrieved preselection items as "preselected by document service". + // Further we must ignore all preselected items, which does not match the URL! + FlatDetection::iterator pIt; + for ( pIt = lPreselections.begin(); + pIt != lPreselections.end() ; + ++pIt ) + { + FlatDetectionInfo& rInfo = *pIt; + + /* + #i60158# + Preselection by DocumentService ... + How many filters (and corresponding types) must be checked ? + All or only the list of filters/types, which match to the given URL too ? + There is no final decision about this currently. So we make it "configurable" .-) + */ + #ifdef IGNORE_NON_URLMATCHING_TYPES_FOR_PRESELECTION_DOCUMENTSERVICE + if ( + (!rInfo.bMatchByExtension) && + (!rInfo.bMatchByPattern ) + ) + continue; + #endif + + rInfo.bPreselectedAsType = sal_False; + rInfo.bPreselectedByFilter = sal_False; + rInfo.bPreselectedByDocumentService = sal_True ; + rFlatTypes.push_back(rInfo); + } + + return sal_True; +} + +/*----------------------------------------------- + 14.11.2003 12:21 +-----------------------------------------------*/ +void TypeDetection::impl_getPreselection(const css::util::URL& aParsedURL , + ::comphelper::MediaDescriptor& rDescriptor, + FlatDetection& rFlatTypes ) +{ + // done to be shure, that only valid results leave this function! + rFlatTypes.clear(); + + /* #i55122# + Sometimes we must detect files without or with real unknown extensions. + If it does not work /which can happen of course .-)/, the user tried to preselect + the right format. But some special dialogs (e.g. "Insert->Sheet From File") + add it's own preselection too. + So we have a combination of preselected values ... + + The we should preferr the most important one - set by the user. + And the user normaly preselects a filter or type. The preslected + document service cames from the dialog. + + Further it doesnt matter if the user preselected a filter or a document service. + A filter selection is always more explicit then a document service selection. + So it must be pereferred. An order between type and filter selection cant be discussed .-) + */ + + ::rtl::OUString sSelectedType = rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_TYPENAME(), ::rtl::OUString()); + if (sSelectedType.getLength()) + impl_getPreselectionForType(sSelectedType, aParsedURL, rFlatTypes); + + ::rtl::OUString sSelectedFilter = rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_FILTERNAME(), ::rtl::OUString()); + if (sSelectedFilter.getLength()) + impl_getPreselectionForFilter(sSelectedFilter, aParsedURL, rFlatTypes); + + ::rtl::OUString sSelectedDoc = rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_DOCUMENTSERVICE(), ::rtl::OUString()); + if (sSelectedDoc.getLength()) + impl_getPreselectionForDocumentService(sSelectedDoc, aParsedURL, rFlatTypes); +} + +/*----------------------------------------------- + 03.11.2003 09:17 +-----------------------------------------------*/ +::rtl::OUString TypeDetection::impl_detectTypeFlatAndDeep( ::comphelper::MediaDescriptor& rDescriptor , + const FlatDetection& lFlatTypes , + sal_Bool bAllowDeep , + OUStringList& rUsedDetectors, + ::rtl::OUString& rLastChance ) +{ + // reset it everytimes, so the outside code can distinguish between + // a set and a not set value. + rLastChance = ::rtl::OUString(); + rUsedDetectors.clear(); + + // step over all possible types for this URL. + // solutions: + // a) no types => no detection + // b) deep detection not allowed => return first valid type of list (because its the preferred or the first valid one) + // or(!) match by URLPattern => in such case a deep detection will be supressed! + // c) type has no detect service => safe the first occured type without a detect service + // as "last chance"(!). It will be used outside of this method + // if no further type could be detected. + // It must be the first one, because it can be a preferred type. + // Our types list was sorted by such criteria! + // d) detect service return a valid result => return its decision + // e) detect service return an invalid result + // or any needed information could not be + // getted from the cache => ignore it, and continue with search + + for (FlatDetection::const_iterator pFlatIt = lFlatTypes.begin(); + pFlatIt != lFlatTypes.end() ; + ++pFlatIt ) + { + const FlatDetectionInfo& aFlatTypeInfo = *pFlatIt; + ::rtl::OUString sFlatType = aFlatTypeInfo.sType; + + if (!impl_validateAndSetTypeOnDescriptor(rDescriptor, sFlatType)) + continue; + + // b) + if ( + (!bAllowDeep ) || + (aFlatTypeInfo.bMatchByPattern) + ) + { + return sFlatType; + } + + try + { + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + CacheItem aType = m_rCache->getItem(FilterCache::E_TYPE, sFlatType); + aLock.clear(); + + ::rtl::OUString sDetectService; + aType[PROPNAME_DETECTSERVICE] >>= sDetectService; + + // c) + if (!sDetectService.getLength()) + { + // accept or not accept flat types without deep detection: that's the question :-) + // May be there exists some states, where we have to use our LastChance feature instead + // of using the flat type directly. + // Here the list of task ID's, which wasrelated to these lines of code: + // #i47159#, #i43404#, #i46494# + + // a flat detected type without the chance for a deep detection ... but preselected by the user + // explicitly (means preselected as type or filter ... not as documentservice!) + // should be accepted. So the user can overrule our detection. + if ( + (aFlatTypeInfo.bPreselectedAsType ) || + (aFlatTypeInfo.bPreselectedByFilter) + ) + return sFlatType; + + // flat detected types without any registered deep detection service and not + // preselected by the user can be used as LAST CHANCE in case no other type could + // be detected. Of course only the first type without deep detector can be used. + // Further ones has to be ignored. + if (rLastChance.getLength() < 1) + rLastChance = sFlatType; + + continue; + } + + // dont forget to add every real asked deep detection service here. + // Such detectors will be ignored if may be "impl_detectTypeDeepOnly()" + // must be called later! + rUsedDetectors.push_back(sDetectService); + ::rtl::OUString sDeepType = impl_askDetectService(sDetectService, rDescriptor); + + // d) + if (sDeepType.getLength()) + return sDeepType; + } + catch(const css::container::NoSuchElementException&) + {} + // e) + } + + return ::rtl::OUString(); + // <- SAFE ---------------------------------- +} + +/*----------------------------------------------- + 03.11.2003 09:19 +-----------------------------------------------*/ +::rtl::OUString TypeDetection::impl_detectTypeDeepOnly( ::comphelper::MediaDescriptor& rDescriptor , + const OUStringList& lOutsideUsedDetectors) +{ + // We must know if a detect service was already used: + // i) in a combined flat/deep detection scenario outside or + // ii) in this method for a deep detection only. + // Reason: Such deep detection services work differently in these two modes! + OUStringList lInsideUsedDetectors; + OUStringList::const_iterator pIt; + + // a) + // The list of "already used detect services" correspond to the list + // of preselected or flat detected types. But these detect services was called + // to check these types explicitly and return black/white ... yes/no only. + // Now they are called to return any possible result. But we should preferr + // these already used detect services against all other ones! + for ( pIt = lOutsideUsedDetectors.begin(); + pIt != lOutsideUsedDetectors.end() ; + ++pIt ) + { + const ::rtl::OUString& sDetectService = *pIt; + ::rtl::OUString sDeepType = impl_askDetectService(sDetectService, rDescriptor); + if (sDeepType.getLength()) + return sDeepType; + lInsideUsedDetectors.push_back(sDetectService); + } + + // SAFE -> ---------------------------------- + ::osl::ResettableMutexGuard aLock(m_aLock); + OUStringList lDetectors = m_rCache->getItemNames(FilterCache::E_DETECTSERVICE); + aLock.clear(); + // <- SAFE ---------------------------------- + + // b) + // Sometimes it would be nice to ask a special set of detect services before + // any other detect service is asked. E.g. by using a preselection of a DocumentService. + // That's needed to prevent us from asking the "wrong application module" and + // opening the files into the "wrong application". + ::rtl::OUString sPreselDocumentService = rDescriptor.getUnpackedValueOrDefault( + ::comphelper::MediaDescriptor::PROP_DOCUMENTSERVICE(), + ::rtl::OUString()); + if (sPreselDocumentService.getLength()) + { + for ( pIt = lDetectors.begin(); + pIt != lDetectors.end() ; + ++pIt ) + { + const ::rtl::OUString& sDetectService = *pIt; + + OUStringList::const_iterator pAlreadyUsed = ::std::find(lInsideUsedDetectors.begin(), lInsideUsedDetectors.end(), sDetectService); + if (pAlreadyUsed != lInsideUsedDetectors.end()) + continue; + + // SAFE -> -------------------------------------------------------- + aLock.reset(); + + CacheItem lIProps; + lIProps[PROPNAME_DETECTSERVICE] <<= sDetectService; + OUStringList lTypes = m_rCache->getMatchingItemsByProps(FilterCache::E_TYPE, lIProps); + + aLock.clear(); + // <- SAFE -------------------------------------------------------- + + sal_Bool bMatchDetectorToDocumentService = sal_False; + OUStringList::const_iterator pIt2; + for ( pIt2 = lTypes.begin(); + pIt2 != lTypes.end() ; + ++pIt2 ) + { + const ::rtl::OUString& sType = *pIt2; + + try + { + // SAFE -> ---------------------------------------------------- + aLock.reset(); + + CacheItem aType = m_rCache->getItem(FilterCache::E_TYPE, sType); + ::rtl::OUString sFilter; + aType[PROPNAME_PREFERREDFILTER] >>= sFilter; + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, sFilter); + ::rtl::OUString sCheckDocumentService; + aFilter[PROPNAME_DOCUMENTSERVICE] >>= sCheckDocumentService; + + aLock.clear(); + // <- SAFE + + if (sCheckDocumentService.equals(sPreselDocumentService)) + { + bMatchDetectorToDocumentService = sal_True; + break; + } + } + catch(const css::uno::Exception&) + { continue; } + } + + if (bMatchDetectorToDocumentService) + { + ::rtl::OUString sDeepType = impl_askDetectService(sDetectService, rDescriptor); + if (sDeepType.getLength()) + return sDeepType; + lInsideUsedDetectors.push_back(sDetectService); + } + } + } + + // c) + // Last chance. No "used detectors", no "preselected detectors" ... ask any existing detect services + // for this till know unknown format. + for ( pIt = lDetectors.begin(); + pIt != lDetectors.end() ; + ++pIt ) + { + const ::rtl::OUString& sDetectService = *pIt; + + OUStringList::const_iterator pAlreadyUsed = ::std::find(lInsideUsedDetectors.begin(), lInsideUsedDetectors.end(), sDetectService); + if (pAlreadyUsed != lInsideUsedDetectors.end()) + continue; + + ::rtl::OUString sDeepType = impl_askDetectService(sDetectService, rDescriptor); + if (sDeepType.getLength()) + return sDeepType; + } + + return ::rtl::OUString(); +} + +/*----------------------------------------------- + 07.03.2005 11:13 +-----------------------------------------------*/ +void TypeDetection::impl_seekStreamToZero(comphelper::MediaDescriptor& rDescriptor) +{ + // try to seek to 0 ... + // But because XSeekable is an optional interface ... try it only .-) + css::uno::Reference< css::io::XInputStream > xStream = rDescriptor.getUnpackedValueOrDefault( + ::comphelper::MediaDescriptor::PROP_INPUTSTREAM(), + css::uno::Reference< css::io::XInputStream >()); + css::uno::Reference< css::io::XSeekable > xSeek(xStream, css::uno::UNO_QUERY); + if (xSeek.is()) + { + try + { + xSeek->seek(0); + } + catch(const css::uno::RuntimeException& exRun) + { throw exRun; } + catch(const css::uno::Exception&) + {} + } +} + +/*----------------------------------------------- + 30.10.2003 15:12 +-----------------------------------------------*/ +::rtl::OUString TypeDetection::impl_askDetectService(const ::rtl::OUString& sDetectService, + ::comphelper::MediaDescriptor& rDescriptor ) +{ + // Open the stream and add it to the media descriptor if this method is called for the first time. + // All following requests to this method will detect, that there already exists a stream .-) + // Attention: This method throws an exception if the stream could not be opened. + // It's important to break any further detection in such case. + // Catch it on the highest detection level only !!! + impl_openStream(rDescriptor); + + // seek to 0 is an optional feature to be more robust against + // "simple implemented detect services" .-) + impl_seekStreamToZero(rDescriptor); + + css::uno::Reference< css::document::XExtendedFilterDetection > xDetector; + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR; + + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + xSMGR = m_xSMGR; + aLock.clear(); + // <- SAFE + + // Attention! If e.g. an office module was not installed sometimes we find a + // registered detect service, which is referred inside the configuration ... but not realy + // installed. On the other side we use third party components here, which can make trouble anyway. + // So we should handle errors during creation of such services more gracefully .-) + xDetector = css::uno::Reference< css::document::XExtendedFilterDetection >( + xSMGR->createInstance(sDetectService), + css::uno::UNO_QUERY); + + if ( ! xDetector.is()) + return ::rtl::OUString(); + + ::rtl::OUString sDeepType; + try + { + // start deep detection + // Dont forget to convert stl descriptor to its uno representation. + + /* Attention! + You have to use an explicit instance of this uno sequence ... + Because its used as an in out parameter. And in case of a temp. used object + we will run into memory corruptions! + */ + css::uno::Sequence< css::beans::PropertyValue > lDescriptor; + rDescriptor >> lDescriptor; + sDeepType = xDetector->detect(lDescriptor); + rDescriptor << lDescriptor; + } + catch(const css::uno::Exception&) + { + // We should ignore errors here. + // Thrown exceptions mostly will end in crash recovery ... + // But might be we find another deep detection service which can detect the same + // document without a problem .-) + sDeepType = ::rtl::OUString(); + } + + // seek to 0 is an optional feature to be more robust against + // "simple implemented detect services" .-) + impl_seekStreamToZero(rDescriptor); + + // analyze the results + // a) detect service returns "" => return "" too and remove TYPE/FILTER prop from descriptor + // b) returned type is unknown => return "" too and remove TYPE/FILTER prop from descriptor + // c) returned type is valid => check TYPE/FILTER props inside descriptor and return the type + + // this special helper checks for a valid type + // and set right values on the descriptor! + sal_Bool bValidType = impl_validateAndSetTypeOnDescriptor(rDescriptor, sDeepType); + if (bValidType) + return sDeepType; + + return ::rtl::OUString(); +} + +/*----------------------------------------------- + 17.12.2004 13:47 +-----------------------------------------------*/ +::rtl::OUString TypeDetection::impl_askUserForTypeAndFilterIfAllowed(::comphelper::MediaDescriptor& rDescriptor) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR; + aLock.clear(); + // <- SAFE + + css::uno::Reference< css::task::XInteractionHandler > xInteraction = + rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_INTERACTIONHANDLER(), + css::uno::Reference< css::task::XInteractionHandler >()); + + if (!xInteraction.is()) + return ::rtl::OUString(); + + ::rtl::OUString sURL = + rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_URL(), + ::rtl::OUString()); + + css::uno::Reference< css::io::XInputStream > xStream = + rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_INPUTSTREAM(), + css::uno::Reference< css::io::XInputStream >()); + + // Dont distrub the user for "non existing files - means empty URLs" or + // if we was forced to detect a stream. + // Reason behind: We must be shure to ask user for "unknown contents" only ... + // and not for "missing files". Especialy if detection is done by a stream only + // we cant check if the stream points to an "existing content"! + if ( + (!sURL.getLength() ) || // "non existing file" ? + (!xStream.is() ) || // non existing file ! + (sURL.equalsIgnoreAsciiCaseAsciiL("private:stream", 14)) // not a good idea .-) + ) + return ::rtl::OUString(); + + try + { + // create a new request to ask user for it's decision about the usable filter + ::framework::RequestFilterSelect* pRequest = new ::framework::RequestFilterSelect(sURL); + css::uno::Reference< css::task::XInteractionRequest > xRequest(static_cast< css::task::XInteractionRequest* >(pRequest), css::uno::UNO_QUERY_THROW); + xInteraction->handle(xRequest); + + // "Cancel" pressed? => return with error + if (pRequest->isAbort()) + return ::rtl::OUString(); + + // "OK" pressed => verify the selected filter, get it's coressponding + // type and return it. (BTW: We must update the media descriptor here ...) + // The user selected explicitly a filter ... but normaly we are interested on + // a type here only. But we must be shure, that the selected filter is used + // too and no ambigous filter registration disturb us .-) + + ::rtl::OUString sFilter = pRequest->getFilter(); + if (!impl_validateAndSetFilterOnDescriptor(rDescriptor, sFilter)) + return ::rtl::OUString(); + + ::rtl::OUString sType; + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME()] >>= sType; + return sType; + } + catch(const css::uno::Exception&) + {} + + return ::rtl::OUString(); +} + +/*----------------------------------------------- + 10.03.2004 10:30 +-----------------------------------------------*/ +void TypeDetection::impl_openStream(::comphelper::MediaDescriptor& rDescriptor) + throw (css::uno::Exception) +{ + sal_Bool bSuccess = sal_False; + ::rtl::OUString sURL = rDescriptor.getUnpackedValueOrDefault( ::comphelper::MediaDescriptor::PROP_URL(), ::rtl::OUString() ); + sal_Bool bRequestedReadOnly = rDescriptor.getUnpackedValueOrDefault( ::comphelper::MediaDescriptor::PROP_READONLY(), sal_False ); + if ( sURL.getLength() && ::utl::LocalFileHelper::IsLocalFile( INetURLObject( sURL ).GetMainURL( INetURLObject::NO_DECODE ) ) ) + { + // OOo uses own file locking mechanics in case of local file + bSuccess = rDescriptor.addInputStreamOwnLock(); + } + else + bSuccess = rDescriptor.addInputStream(); + + if ( !bSuccess ) + throw css::uno::Exception(_FILTER_CONFIG_FROM_ASCII_("Could not open stream."), static_cast< css::document::XTypeDetection* >(this)); + + if ( !bRequestedReadOnly ) + { + // The MediaDescriptor implementation adds ReadOnly argument if the file can not be opened for writing + // this argument should be either removed or an additional argument should be added so that application + // can separate the case when the user explicitly requests readonly document. + // The current solution is to remove it here. + rDescriptor.erase( ::comphelper::MediaDescriptor::PROP_READONLY() ); + } +} + +/*----------------------------------------------- + 04.07.2003 13:47 +-----------------------------------------------*/ +void TypeDetection::impl_removeTypeFilterFromDescriptor(::comphelper::MediaDescriptor& rDescriptor) +{ + ::comphelper::MediaDescriptor::iterator pItType = rDescriptor.find(::comphelper::MediaDescriptor::PROP_TYPENAME() ); + ::comphelper::MediaDescriptor::iterator pItFilter = rDescriptor.find(::comphelper::MediaDescriptor::PROP_FILTERNAME()); + if (pItType != rDescriptor.end()) + rDescriptor.erase(pItType); + if (pItFilter != rDescriptor.end()) + rDescriptor.erase(pItFilter); +} + +/*----------------------------------------------- + 14.10.2003 11:15 +-----------------------------------------------*/ +sal_Bool TypeDetection::impl_validateAndSetTypeOnDescriptor( ::comphelper::MediaDescriptor& rDescriptor, + const ::rtl::OUString& sType ) +{ + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + if (m_rCache->hasItem(FilterCache::E_TYPE, sType)) + { + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME()] <<= sType; + return sal_True; + } + aLock.clear(); + // <- SAFE + + // remove all related informations from the descriptor + impl_removeTypeFilterFromDescriptor(rDescriptor); + return sal_False; +} + +/*----------------------------------------------- + 04.07.2003 14:01 +-----------------------------------------------*/ +sal_Bool TypeDetection::impl_validateAndSetFilterOnDescriptor( ::comphelper::MediaDescriptor& rDescriptor, + const ::rtl::OUString& sFilter ) +{ + try + { + // SAFE -> + ::osl::ResettableMutexGuard aLock(m_aLock); + + CacheItem aFilter = m_rCache->getItem(FilterCache::E_FILTER, sFilter); + ::rtl::OUString sType; + aFilter[PROPNAME_TYPE] >>= sType; + CacheItem aType = m_rCache->getItem(FilterCache::E_TYPE, sType); + + aLock.clear(); + // <- SAFE + + // found valid type and filter => set it on the given descriptor + rDescriptor[::comphelper::MediaDescriptor::PROP_TYPENAME() ] <<= sType ; + rDescriptor[::comphelper::MediaDescriptor::PROP_FILTERNAME()] <<= sFilter; + return sal_True; + } + catch(const css::container::NoSuchElementException&){} + + // remove all related informations from the descriptor + impl_removeTypeFilterFromDescriptor(rDescriptor); + return sal_False; +} + +/*----------------------------------------------- + 03.07.2003 10:36 +-----------------------------------------------*/ +::rtl::OUString TypeDetection::impl_getImplementationName() +{ + return ::rtl::OUString::createFromAscii("com.sun.star.comp.filter.config.TypeDetection"); +} + +/*----------------------------------------------- + 03.07.2003 11:27 +-----------------------------------------------*/ +css::uno::Sequence< ::rtl::OUString > TypeDetection::impl_getSupportedServiceNames() +{ + css::uno::Sequence< ::rtl::OUString > lServiceNames(1); + lServiceNames[0] = ::rtl::OUString::createFromAscii("com.sun.star.document.TypeDetection"); + return lServiceNames; +} + +/*----------------------------------------------- + 09.07.2003 08:02 +-----------------------------------------------*/ +css::uno::Reference< css::uno::XInterface > SAL_CALL TypeDetection::impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR) +{ + TypeDetection* pNew = new TypeDetection(xSMGR); + return css::uno::Reference< css::uno::XInterface >(static_cast< css::document::XTypeDetection* >(pNew), css::uno::UNO_QUERY); +} + + } // namespace config +} // namespace filter diff --git a/filter/source/config/cache/typedetection.hxx b/filter/source/config/cache/typedetection.hxx new file mode 100644 index 000000000000..4dbf6f07d33e --- /dev/null +++ b/filter/source/config/cache/typedetection.hxx @@ -0,0 +1,459 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __FILTER_CONFIG_TYPEDETECTION_HXX_ +#define __FILTER_CONFIG_TYPEDETECTION_HXX_ + +//_______________________________________________ +// includes + +#include "basecontainer.hxx" +#include <com/sun/star/document/XTypeDetection.hpp> +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#include <comphelper/mediadescriptor.hxx> +#include <cppuhelper/implbase1.hxx> + +//_______________________________________________ +// namespace + +namespace filter{ + namespace config{ + +namespace css = ::com::sun::star; + +//_______________________________________________ +// definitions + +//_______________________________________________ + +/** @short implements the service <type scope="com.sun.star.document">TypeDetection</type>. + */ +class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer , + css::document::XTypeDetection > +{ + //------------------------------------------- + // native interface + + public: + + //--------------------------------------- + // ctor/dtor + + /** @short standard ctor to connect this interface wrapper to + the global filter cache instance ... + + @param xSMGR + reference to the uno service manager, which created this service instance. + */ + TypeDetection(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + //--------------------------------------- + + /** @short standard dtor. + */ + virtual ~TypeDetection(); + + //------------------------------------------- + // private helper + + private: + + //--------------------------------------- + /** TODO document me */ + sal_Bool impl_getPreselectionForType(const ::rtl::OUString& sPreSelType, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ); + + //--------------------------------------- + /** TODO document me */ + sal_Bool impl_getPreselectionForFilter(const ::rtl::OUString& sPreSelFilter, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ); + + //--------------------------------------- + /** TODO document me */ + sal_Bool impl_getPreselectionForDocumentService(const ::rtl::OUString& sPreSelDocumentService, + const css::util::URL& aParsedURL , + FlatDetection& rFlatTypes ); + + //--------------------------------------- + + /** @short check if a filter or a type was preselected inside the given + MediaDescriptor and validate this information. + + @descr Only in case the preselected filter exists and its type registration + seems to be usefully, it would be used realy as valid type detection + result. This method doesnt make any deep detection here. It checks only + if the preselection match to the URL by an URLPattern. + This information has to be added to the given rFlatTypes list too. + The outside code can use it to supress a deep detection then in general. + Because pattern are defined as non detectable at all! + + @param pDescriptor + provides any easy-to-use stl interface to the MediaDescriptor. + Note : Its content will be adapted to returned result of this method. + Means: The type/filter entries of it will be actualized or removed. + + @param rFlatTypes + the preselected type (or the registered type of a preselected filter) + will be added here as first(!) element. Further we have to provide the + information, if this type match to the given URL by its URLPattern + registration. + */ + void impl_getPreselection(const css::util::URL& aParsedURL , + ::comphelper::MediaDescriptor& rDescriptor, + FlatDetection& rFlatTypes ); + + //--------------------------------------- + + /** @short make a combined flat/deep type detection + + @descr It steps over all flat detected types (given by the parameter lFlatTypes), + try it and search for most suitable one. + The specified MediaDescriptor will be patched, so it contain + the right values everytime. Using of any deep detection service + can be enabled/disabled. And last but not least: If the results + wont be realy clear (because a flat detected type has no deep + detection service), a "sugested" type name will be returned as "rLastChance". + It can be used after e.g. all well known deep detection services + was used without getting any result. Then this "last-chance-type" + should be returned. Of course using of it can fail too ... but its a try :-) + + As an optimization - this method collects the names of all used deep + detection services. This information can be usefull inside the may be + afterwards called method "impl_detectTypeDeepOnly()"! + + @param rDescriptor + provides any easy-to-use stl interface to the MediaDescriptor. + Note : Its content will be adapted to returned result of this method. + Means: The type/filter entries of it will be actualized or removed from it. + + @param lFlatTypes + a list of all flat detected types, which should be checked here. + No other types are allowed here! + + @param rLastChance + the internal name of a "suggested type" ... (see before) + Note: it will be reseted to an empty string everytimes. So + a set value of "rLastChance" can be detected outside very easy. + + @param rUsedDetectors + used as [out] parameter. It contains a list of names of all deep + detection services, which was used inside this method. + Such detectors can be ignored later if "impl_detectTypeDeepOnly()" + is called. + + @param bAllowDeep + enable/disable using of a might existing deep detection service. + + @return The internal name of a detected type. + An empty value if detection failed. .... but see rLastChance + for additional returns! + */ + ::rtl::OUString impl_detectTypeFlatAndDeep( ::comphelper::MediaDescriptor& rDescriptor , + const FlatDetection& lFlatTypes , + sal_Bool bAllowDeep , + OUStringList& rUsedDetectors, + ::rtl::OUString& rLastChance ); + + //--------------------------------------- + + /** @short make a deep type detection only + + @descr It steps over all well known deep detection services + and check her results. The first positive result will be + used for return. Its more a "try and error" algorithm then + a real type detection and will be used if a flat detection + cant work realy ... e.g. if the extension of an URL is + missing or wrong. + + @param rDescriptor + provides any easy-to-use stl interface to the MediaDescriptor. + Note : Its content will be adapted to returned result of this method. + Means: The type/filter entries of it will be actualized or removed from it. + + @param rUsedDetectors + It contains a list of names of all deep detection services, + which was already used inside the method "impl_detectTypeFlatAndDeep()"! + Such detectors must be ignored here! + + @return The internal name of a detected type. + An empty value if detection failed. + */ + ::rtl::OUString impl_detectTypeDeepOnly( ::comphelper::MediaDescriptor& rDescriptor , + const OUStringList& rUsedDetectors); + + //--------------------------------------- + + /** @short seek a might existing stream to position 0. + + @descr This is an optinal action to be more robust + in case any detect service doesnt make this seek ... + Normaly it's part of any called detect service or filter ... + but sometimes it's not done there. + + @param rDescriptor + a stl representation of the MediaDescriptor as in/out parameter. + */ + void impl_seekStreamToZero(comphelper::MediaDescriptor& rDescriptor); + + //--------------------------------------- + + /** @short make deep type detection for a specified + detect service (threadsafe!). + + @descr It creates the right uno service, prepare the + needed MediaDescriptor, call ths right interfaces, + and return the results. + + @attention The results (means type and corresponding filter) + are already part of the in/out parameter pDescriptor. + (in case they was valid). + + @param sDetectService + uno service name of the detect service. + + @param rDescriptor + a stl representation of the MediaDescriptor as in/out parameter. + */ + ::rtl::OUString impl_askDetectService(const ::rtl::OUString& sDetectService, + ::comphelper::MediaDescriptor& rDescriptor ); + + //--------------------------------------- + + /** @short try to find an interaction handler and + ask him to select a possible filter for + this unknown format. + + @descr If the user select a filter, it will be used as return value + without further checking against the given file content! + + @param rDescriptor + a stl representation of the MediaDescriptor as in/out parameter. + + @return [string] + a valid type name or an empty string if user canceled interaction. + */ + ::rtl::OUString impl_askUserForTypeAndFilterIfAllowed(::comphelper::MediaDescriptor& rDescriptor); + + //--------------------------------------- + + /** @short check if an input stream is already part of the + given MediaDesciptor and creates a new one if neccessary. + + @attention This method does further something special! + <ul> + <li> + If the given URL seem to be a streamable content, but creation of the stream + failed (might by an IOException), this method throws an exception. + (May be an existing interaction handler must be called here too ...) + The whole detection must be interrupted then and the interface method queryTypeByDescriptor() + must return an empty type name value. + + That prevent us against multiple handling of the same error more then ones + (e.g. if we ask all detect services as fallback ...). + </li> + <li> + In case the stream already exists inside the descriptor this method does nothing. + </li> + <li> + In case the stream does not exists but can be created successfully, the stream will + be added to the descriptor. + </li> + </ul> + + @param rDescriptor + provides any easy-to-use stl interface to the MediaDescriptor. + Note : Its content will be adapted to returned result of this method. + Means: The stream will be added to it. + + @throw Any suitable exception if stream should be opened but operation was not sucessfull. + Note: If an interactionHandler is part of the given descriptor too, it was already used. + Means: let the exception pass trough the top most interface method! + */ + void impl_openStream(::comphelper::MediaDescriptor& rDescriptor) + throw (css::uno::Exception); + + //--------------------------------------- + + /** @short validate the specified type and its relation ships + and set all needed informations related to this type + in the specified descriptor. + + @descr Related informations are: - corresponding filter + - media type + - ... + + @param rDescriptor + provides access to the outside MediaDescriptor. + + @param sType + the name of the type, which should be set on the descriptor. + Can be empty to remove any related value from the descriptor! + + @return TRUE the specified type and its registrations was valid(!) and + could be set on the descriptor. + */ + sal_Bool impl_validateAndSetTypeOnDescriptor( ::comphelper::MediaDescriptor& rDescriptor, + const ::rtl::OUString& sType ); + + //--------------------------------------- + + /** @short validate the specified filter and its relation ships + and set all needed informations related to this filter + in the specified descriptor. + + @descr Related informations are: - corresponding type + - ... + + @param rDescriptor + provides access to the outside MediaDescriptor. + + @param sFilter + the name of the filter, which should be set on the descriptor. + Can be empty to remove any related value from the descriptor! + + @return TRUE the specified type and its registrations was valid(!) and + could be set on the descriptor. + */ + sal_Bool impl_validateAndSetFilterOnDescriptor( ::comphelper::MediaDescriptor& rDescriptor, + const ::rtl::OUString& sFilter ); + + //--------------------------------------- + + /** @short remove anythimng related to a TYPE/FILTER entry from the + specified MediaDescriptor. + + @descr This method works together with impl_validateAndSetTypeOnDescriptor()/ + impl_validateAndSetFilterOnDescriptor(). All informations, which can be + set by these two operations must be "removeable" by this method. + + @param rDescriptor + reference to the MediaDescriptor (represented by an easy-to-use + stl interface!), which should be patched. + */ + void impl_removeTypeFilterFromDescriptor(::comphelper::MediaDescriptor& rDescriptor); + + //--------------------------------------- + + /** @short search the best suitable filter for the given type + and add it into the media descriptor. + + @descr Normaly this is a type detection only ... + but for some special features we must overwrite our detection + because a file must be loaded into a special (means preselected) + application. + + E.g. CSV/TXT format are sometimes ugly to handle .-) + + Note: If the descriptor already include a filter + (may be selected by a FilterSelect interaction or preselected + by the user itself) ... we dont change that here ! + + @param rDescriptor + reference to the MediaDescriptor (represented by an easy-to-use + stl interface!), which should be patched. + + @param sType + the internal type name, where we search a filter for. + Used as IN/OUT parameter so we can overrule the detection result for + types too ! + + @note #i60158# + sometimes our text ascii and our csv filter cant work together. + Then we overwrite our detection hardly. + sType param is used as out parameter then too ... and + rDescriptor will be changed by selecting another filter. + (see code) + */ + void impl_checkResultsAndAddBestFilter(::comphelper::MediaDescriptor& rDescriptor, + ::rtl::OUString& sType ); + + //------------------------------------------- + // uno interface + + public: + + //--------------------------------------- + // XTypeDetection + + virtual ::rtl::OUString SAL_CALL queryTypeByURL(const ::rtl::OUString& sURL) + throw (css::uno::RuntimeException); + + virtual ::rtl::OUString SAL_CALL queryTypeByDescriptor(css::uno::Sequence< css::beans::PropertyValue >& lDescriptor, + sal_Bool bAllowDeep ) + throw (css::uno::RuntimeException); + + //------------------------------------------- + // static uno helper! + + public: + + //--------------------------------------- + + /** @short return the uno implementation name of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix uno implementation name of this class. + */ + static ::rtl::OUString impl_getImplementationName(); + + //--------------------------------------- + + /** @short return the list of supported uno services of this class. + + @descr Because this information is used at several places + (and mostly an object instance of this class is not possible) + its implemented as a static function! + + @return The fix list of uno services supported by this class. + */ + static css::uno::Sequence< ::rtl::OUString > impl_getSupportedServiceNames(); + + //--------------------------------------- + + /** @short return a new intsnace of this class. + + @descr This method is used by the uno service manager, to create + a new instance of this service if needed. + + @param xSMGR + reference to the uno service manager, which require + this new instance. It should be passed to the new object + so it can be used internaly to create own needed uno resources. + + @return The new instance of this service as an uno reference. + */ + static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); +}; + + } // namespace config +} // namespace filter + +#endif // __FILTER_CONFIG_TYPEDETECTION_HXX_ diff --git a/filter/source/config/cache/versions.hxx b/filter/source/config/cache/versions.hxx new file mode 100644 index 000000000000..fbd92604170f --- /dev/null +++ b/filter/source/config/cache/versions.hxx @@ -0,0 +1,36 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef _FILTER_CONFIG_VERSIONS_HXX_ +#define _FILTER_CONFIG_VERSIONS_HXX_ + +//_______________________________________________ + +//#define _FILTER_CONFIG_Q_ // final Q code base +#define _FILTER_CONFIG_MIGRATION_Q_ // usefull for migration time, to support some old functionality temp. :-) + +#endif // _FILTER_CONFIG_VERSIONS_HXX_ diff --git a/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_SoundHandler.xcu b/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_SoundHandler.xcu new file mode 100644 index 000000000000..37971f848bef --- /dev/null +++ b/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_SoundHandler.xcu @@ -0,0 +1,3 @@ + <node oor:name="com.sun.star.comp.framework.SoundHandler" oor:op="replace" > + <prop oor:name="Types"><value>wav_Wave_Audio_File</value></prop> + </node> diff --git a/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_oxt_handler.xcu b/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_oxt_handler.xcu new file mode 100644 index 000000000000..e2b49b8d12b0 --- /dev/null +++ b/filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_oxt_handler.xcu @@ -0,0 +1,3 @@ + <node oor:name="com.sun.star.comp.framework.OXTFileHandler" oor:op="replace" > + <prop oor:name="Types"><value>oxt_OpenOffice_Extension</value></prop> + </node> diff --git a/filter/source/config/fragments/delzip b/filter/source/config/fragments/delzip new file mode 100644 index 000000000000..e69de29bb2d1 --- /dev/null +++ b/filter/source/config/fragments/delzip diff --git a/filter/source/config/fragments/fcfg_base.mk b/filter/source/config/fragments/fcfg_base.mk new file mode 100644 index 000000000000..d5c0d4cc7f73 --- /dev/null +++ b/filter/source/config/fragments/fcfg_base.mk @@ -0,0 +1,51 @@ +all_fragments+=base + +# ----------------------------------------------- +# count = 6 +T4_BASE = \ + writer_web_HTML_help \ + oxt_OpenOffice_Extension \ + wav_Wave_Audio_File \ + component_Bibliography \ + component_DB + +# ----------------------------------------------- +# count = 2 +F4_BASE = \ + writer_web_HTML_help + +# ----------------------------------------------- +# count = 1 +F4_UI_BASE = + +# ----------------------------------------------- +# count = 3 +L4_BASE = \ + com_sun_star_frame_Bibliography \ + com_sun_star_sdb_ContentLoader + +# ----------------------------------------------- +# count = 2 +C4_BASE = \ + com_sun_star_comp_framework_SoundHandler \ + com_sun_star_comp_framework_oxt_handler + +# ----------------------------------------------- +TYPES_4fcfg_base = $(foreach,i,$(T4_BASE) types$/$i.xcu ) +FILTERS_4fcfg_base = $(foreach,i,$(F4_BASE) filters$/$i.xcu ) +UI_FILTERS_4fcfg_base = $(foreach,i,$(F4_UI_BASE) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_base = $(foreach,i,$(L4_BASE) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_base = $(foreach,i,$(C4_BASE) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_base = \ + $(TYPES_4fcfg_base) \ + $(FILTERS_4fcfg_base) \ + $(UI_FILTERS_4fcfg_base) \ + $(FRAMELOADERS_4fcfg_base) \ + $(CONTENTHANDLERS_4fcfg_base) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_base) + +ALL_PACKAGES+=base diff --git a/filter/source/config/fragments/fcfg_calc.mk b/filter/source/config/fragments/fcfg_calc.mk new file mode 100644 index 000000000000..ee949ba60184 --- /dev/null +++ b/filter/source/config/fragments/fcfg_calc.mk @@ -0,0 +1,108 @@ +all_fragments+=calc + +# ----------------------------------------------- +# count = 27 +T4_CALC = \ + calc_DIF \ + writer_web_HTML \ + calc_Lotus \ + calc_QPro \ + calc_MS_Excel_40 \ + calc_MS_Excel_40_VorlageTemplate \ + calc_MS_Excel_5095 \ + calc_MS_Excel_5095_VorlageTemplate \ + calc_MS_Excel_95 \ + calc_MS_Excel_95_VorlageTemplate \ + calc_MS_Excel_97 \ + calc_MS_Excel_97_VorlageTemplate \ + writer_Rich_Text_Format \ + calc_SYLK \ + calc_StarOffice_XML_Calc \ + calc_Text_txt_csv_StarCalc \ + calc_StarOffice_XML_Calc_Template \ + pdf_Portable_Document_Format \ + calc_dBase\ + calc8\ + calc8_template \ + calc_MS_Excel_2003_XML \ + MS_Excel_2007_XML \ + MS_Excel_2007_XML_Template \ + MS_Excel_2007_Binary + +# ----------------------------------------------- +# count = 28 +F4_CALC = \ + DIF \ + HTML__StarCalc_ \ + Lotus \ + QPro \ + MS_Excel_4_0 \ + MS_Excel_4_0_Vorlage_Template \ + MS_Excel_5_0_95 \ + MS_Excel_5_0_95_Vorlage_Template \ + MS_Excel_95 \ + MS_Excel_95_Vorlage_Template \ + MS_Excel_97 \ + MS_Excel_97_Vorlage_Template \ + Rich_Text_Format__StarCalc_ \ + SYLK \ + StarOffice_XML__Calc_ \ + Text___txt___csv__StarCalc_ \ + calc_HTML_WebQuery \ + calc_StarOffice_XML_Calc_Template \ + calc_pdf_Export \ + dBase \ + calc8 \ + calc8_template \ + MS_Excel_2003_XML \ + calc_MS_Excel_2007_XML \ + calc_MS_Excel_2007_XML_Template \ + calc_MS_Excel_2007_Binary + +# ----------------------------------------------- +# count = 12 +F4_UI_CALC = \ + HTML__StarCalc__ui \ + MS_Excel_4_0_Vorlage_Template_ui \ + MS_Excel_5_0_95_Vorlage_Template_ui \ + MS_Excel_95_Vorlage_Template_ui \ + MS_Excel_97_Vorlage_Template_ui \ + StarOffice_XML__Calc__ui \ + Text___txt___csv__StarCalc__ui \ + calc_HTML_WebQuery_ui \ + calc_StarOffice_XML_Calc_Template_ui \ + calc8_ui \ + calc8_template_ui \ + MS_Excel_2003_XML_ui \ + calc_MS_Excel_2007_XML_ui \ + calc_MS_Excel_2007_XML_Template_ui \ + calc_MS_Excel_2007_Binary_ui + +# ----------------------------------------------- +# count = 0 +L4_CALC = + +# ----------------------------------------------- +# count = 0 +C4_CALC = + +# ----------------------------------------------- +TYPES_4fcfg_calc = $(foreach,i,$(T4_CALC) types$/$i.xcu ) +FILTERS_4fcfg_calc = $(foreach,i,$(F4_CALC) filters$/$i.xcu ) +UI_FILTERS_4fcfg_calc = $(foreach,i,$(F4_UI_CALC) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_calc = $(foreach,i,$(L4_CALC) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_calc = $(foreach,i,$(C4_CALC) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_calc = \ + $(TYPES_4fcfg_calc) \ + $(FILTERS_4fcfg_calc) \ + $(UI_FILTERS_4fcfg_calc) \ + $(FRAMELOADERS_4fcfg_calc) \ + $(CONTENTHANDLERS_4fcfg_calc) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_calc) + +ALL_PACKAGES+=calc + diff --git a/filter/source/config/fragments/fcfg_calc_bf.mk b/filter/source/config/fragments/fcfg_calc_bf.mk new file mode 100644 index 000000000000..454d303f86c8 --- /dev/null +++ b/filter/source/config/fragments/fcfg_calc_bf.mk @@ -0,0 +1,59 @@ +all_fragments+=calc_bf + +# ----------------------------------------------- +# count = 7 +T4_CALC_BF = \ + calc_StarCalc_10 \ + calc_StarCalc_30 \ + calc_StarCalc_30_VorlageTemplate \ + calc_StarCalc_40 \ + calc_StarCalc_40_VorlageTemplate \ + calc_StarCalc_50 \ + calc_StarCalc_50_VorlageTemplate + +# ----------------------------------------------- +# count = 7 +F4_CALC_BF = \ + StarCalc_1_0 \ + StarCalc_3_0 \ + StarCalc_3_0_Vorlage_Template \ + StarCalc_4_0 \ + StarCalc_4_0_Vorlage_Template \ + StarCalc_5_0 \ + StarCalc_5_0_Vorlage_Template + +# ----------------------------------------------- +# count = 3 +F4_UI_CALC_BF = \ + StarCalc_3_0_Vorlage_Template_ui \ + StarCalc_4_0_Vorlage_Template_ui \ + StarCalc_5_0_Vorlage_Template_ui + +# ----------------------------------------------- +# count = 0 +L4_CALC_BF = + +# ----------------------------------------------- +# count = 0 +C4_CALC_BF = + +# ----------------------------------------------- +TYPES_4fcfg_calc_bf = $(foreach,i,$(T4_CALC_BF) types$/$i.xcu ) +FILTERS_4fcfg_calc_bf = $(foreach,i,$(F4_CALC_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_calc_bf = $(foreach,i,$(F4_UI_CALC_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_calc_bf = $(foreach,i,$(L4_CALC_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_calc_bf = $(foreach,i,$(C4_CALC_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_calc_bf = \ + $(TYPES_4fcfg_calc) \ + $(FILTERS_4fcfg_calc) \ + $(UI_FILTERS_4fcfg_calc) \ + $(FRAMELOADERS_4fcfg_calc) \ + $(CONTENTHANDLERS_4fcfg_calc) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_calc_bf) + +ALL_PACKAGES+=calc_bf + diff --git a/filter/source/config/fragments/fcfg_chart.mk b/filter/source/config/fragments/fcfg_chart.mk new file mode 100644 index 000000000000..c34c8c0bdcdd --- /dev/null +++ b/filter/source/config/fragments/fcfg_chart.mk @@ -0,0 +1,48 @@ +all_fragments+=chart + +# ----------------------------------------------- +# count = 3 +T4_CHART = \ + chart_StarOffice_XML_Chart \ + chart8 + +# ----------------------------------------------- +# count = 2 +F4_CHART = \ + StarOffice_XML__Chart_\ + chart8 + +# ----------------------------------------------- +# count = 2 +F4_UI_CHART = \ + StarOffice_XML__Chart__ui \ + chart8_ui + +# ----------------------------------------------- +# count = 0 +L4_CHART = \ + com_sun_star_comp_chart2_ChartFrameLoader + +# ----------------------------------------------- +# count = 0 +C4_CHART = + +# ----------------------------------------------- +TYPES_4fcfg_chart = $(foreach,i,$(T4_CHART) types$/$i.xcu ) +FILTERS_4fcfg_chart = $(foreach,i,$(F4_CHART) filters$/$i.xcu ) +UI_FILTERS_4fcfg_chart = $(foreach,i,$(F4_UI_CHART) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_chart = $(foreach,i,$(L4_CHART) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_chart = $(foreach,i,$(C4_CHART) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_chart = \ + $(TYPES_4fcfg_chart) \ + $(FILTERS_4fcfg_chart) \ + $(UI_FILTERS_4fcfg_chart) \ + $(FRAMELOADERS_4fcfg_chart) \ + $(CONTENTHANDLERS_4fcfg_chart) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_chart) + +ALL_PACKAGES+=chart diff --git a/filter/source/config/fragments/fcfg_chart_bf.mk b/filter/source/config/fragments/fcfg_chart_bf.mk new file mode 100644 index 000000000000..4286978f2224 --- /dev/null +++ b/filter/source/config/fragments/fcfg_chart_bf.mk @@ -0,0 +1,47 @@ +all_fragments+=chart_bf + +# ----------------------------------------------- +# count = 3 +T4_CHART_BF = \ + chart_StarChart_30 \ + chart_StarChart_40 \ + chart_StarChart_50 + +# ----------------------------------------------- +# count = 3 +F4_CHART_BF = \ + StarChart_3_0 \ + StarChart_4_0 \ + StarChart_5_0 + +# ----------------------------------------------- +# count = 0 +F4_UI_CHART_BF = + +# ----------------------------------------------- +# count = 0 +L4_CHART_BF = + +# ----------------------------------------------- +# count = 0 +C4_CHART_BF = + +# ----------------------------------------------- +TYPES_4fcfg_chart_bf = $(foreach,i,$(T4_CHART_BF) types$/$i.xcu ) +FILTERS_4fcfg_chart_bf = $(foreach,i,$(F4_CHART_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_chart_bf = $(foreach,i,$(F4_UI_CHART_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_chart_bf = $(foreach,i,$(L4_CHART_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_chart_bf = $(foreach,i,$(C4_CHART_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_chart_bf = \ + $(TYPES_4fcfg_chart_bf) \ + $(FILTERS_4fcfg_chart_bf) \ + $(UI_FILTERS_4fcfg_chart_bf) \ + $(FRAMELOADERS_4fcfg_chart_bf) \ + $(CONTENTHANDLERS_4fcfg_chart_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_chart_bf) + +ALL_PACKAGES+=chart_bf diff --git a/filter/source/config/fragments/fcfg_database.mk b/filter/source/config/fragments/fcfg_database.mk new file mode 100644 index 000000000000..906a17e643b4 --- /dev/null +++ b/filter/source/config/fragments/fcfg_database.mk @@ -0,0 +1,45 @@ +all_fragments+=database + +# ----------------------------------------------- +# count = 1 +T4_DATABASE = \ + StarBase + +# ----------------------------------------------- +# count = 1 +F4_DATABASE = \ + StarOffice_XML__Base_ + +# ----------------------------------------------- +# count = 1 +F4_UI_DATABASE = \ + StarOffice_XML__Base__ui + +# ----------------------------------------------- +# count = 1 +L4_DATABASE = \ + org_openoffice_comp_dbflt_DBContentLoader2 + +# ----------------------------------------------- +# count = 1 +C4_DATABASE = + +# ----------------------------------------------- +TYPES_4fcfg_database = $(foreach,i,$(T4_DATABASE) types$/$i.xcu ) +FILTERS_4fcfg_database = $(foreach,i,$(F4_DATABASE) filters$/$i.xcu ) +UI_FILTERS_4fcfg_database = $(foreach,i,$(F4_UI_DATABASE) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_database = $(foreach,i,$(L4_DATABASE) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_database = $(foreach,i,$(C4_DATABASE) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_database = \ + $(TYPES_4fcfg_database) \ + $(FILTERS_4fcfg_database) \ + $(UI_FILTERS_4fcfg_database) \ + $(FRAMELOADERS_4fcfg_database) \ + $(CONTENTHANDLERS_4fcfg_database) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_database) + +ALL_PACKAGES+=database diff --git a/filter/source/config/fragments/fcfg_draw.mk b/filter/source/config/fragments/fcfg_draw.mk new file mode 100644 index 000000000000..d6e6d9caad54 --- /dev/null +++ b/filter/source/config/fragments/fcfg_draw.mk @@ -0,0 +1,56 @@ +all_fragments+=draw + +# ----------------------------------------------- +# count = 9 +T4_DRAW = \ + draw_StarOffice_XML_Draw \ + draw_StarOffice_XML_Draw_Template \ + pdf_Portable_Document_Format\ + draw8 \ + draw8_template + +# ----------------------------------------------- +# count = 9 +F4_DRAW = \ + StarOffice_XML__Draw_ \ + draw_StarOffice_XML_Draw_Template \ + draw_pdf_Export \ + draw8 \ + draw8_template + +# ----------------------------------------------- +# count = 4 +F4_UI_DRAW = \ + StarOffice_XML__Draw__ui \ + draw_StarOffice_XML_Draw_Template_ui \ + draw8_ui \ + draw8_template_ui + +# ----------------------------------------------- +# count = 0 +L4_DRAW = + +# ----------------------------------------------- +# count = 0 +C4_DRAW = + +# ----------------------------------------------- +TYPES_4fcfg_draw = $(foreach,i,$(T4_DRAW) types$/$i.xcu ) +FILTERS_4fcfg_draw = $(foreach,i,$(F4_DRAW) filters$/$i.xcu ) +UI_FILTERS_4fcfg_draw = $(foreach,i,$(F4_UI_DRAW) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_draw = $(foreach,i,$(L4_DRAW) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_draw = $(foreach,i,$(C4_DRAW) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_draw = \ + $(TYPES_4fcfg_draw) \ + $(FILTERS_4fcfg_draw) \ + $(UI_FILTERS_4fcfg_draw) \ + $(FRAMELOADERS_4fcfg_draw) \ + $(CONTENTHANDLERS_4fcfg_draw) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_draw) + +ALL_PACKAGES+=draw + diff --git a/filter/source/config/fragments/fcfg_draw_bf.mk b/filter/source/config/fragments/fcfg_draw_bf.mk new file mode 100644 index 000000000000..5fc2f7da0303 --- /dev/null +++ b/filter/source/config/fragments/fcfg_draw_bf.mk @@ -0,0 +1,51 @@ +all_fragments+=draw_bf + +# ----------------------------------------------- +# count = 4 +T4_DRAW_BF = \ + draw_StarDraw_30 \ + draw_StarDraw_30_Vorlage \ + draw_StarDraw_50 \ + draw_StarDraw_50_Vorlage + +# ----------------------------------------------- +# count = 4 +F4_DRAW_BF = \ + StarDraw_3_0 \ + StarDraw_3_0_Vorlage \ + StarDraw_5_0 \ + StarDraw_5_0_Vorlage + +# ----------------------------------------------- +# count = 2 +F4_UI_DRAW_BF = \ + StarDraw_3_0_Vorlage_ui \ + StarDraw_5_0_Vorlage_ui + +# ----------------------------------------------- +# count = 0 +L4_DRAW_BF = + +# ----------------------------------------------- +# count = 0 +C4_DRAW_BF = + +# ----------------------------------------------- +TYPES_4fcfg_draw_bf = $(foreach,i,$(T4_DRAW_BF) types$/$i.xcu ) +FILTERS_4fcfg_draw_bf = $(foreach,i,$(F4_DRAW_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_draw_bf = $(foreach,i,$(F4_UI_DRAW_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_draw_bf = $(foreach,i,$(L4_DRAW_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_draw_bf = $(foreach,i,$(C4_DRAW_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_draw_bf = \ + $(TYPES_4fcfg_draw_bf) \ + $(FILTERS_4fcfg_draw_bf) \ + $(UI_FILTERS_4fcfg_draw_bf) \ + $(FRAMELOADERS_4fcfg_draw_bf) \ + $(CONTENTHANDLERS_4fcfg_draw_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_draw_bf) + +ALL_PACKAGES+=draw_bf diff --git a/filter/source/config/fragments/fcfg_drawgraphics.mk b/filter/source/config/fragments/fcfg_drawgraphics.mk new file mode 100644 index 000000000000..7038e27e8ae4 --- /dev/null +++ b/filter/source/config/fragments/fcfg_drawgraphics.mk @@ -0,0 +1,117 @@ +all_fragments+=drawgraphics + +# ----------------------------------------------- +# count = 29 +T4_DRAWGRAPHICS = \ + bmp_MS_Windows \ + dxf_AutoCAD_Interchange \ + emf_MS_Windows_Metafile \ + eps_Encapsulated_PostScript \ + gif_Graphics_Interchange \ + graphic_HTML \ + graphic_SWF \ + jpg_JPEG \ + met_OS2_Metafile \ + pbm_Portable_Bitmap \ + pcd_Photo_CD_Base \ + pcd_Photo_CD_Base16 \ + pcd_Photo_CD_Base4 \ + pct_Mac_Pict \ + pcx_Zsoft_Paintbrush \ + pgm_Portable_Graymap \ + png_Portable_Network_Graphic \ + ppm_Portable_Pixelmap \ + psd_Adobe_Photoshop \ + ras_Sun_Rasterfile \ + sgf_StarOffice_Writer_SGF \ + sgv_StarDraw_20 \ + svg_Scalable_Vector_Graphics \ + svm_StarView_Metafile \ + tga_Truevision_TARGA \ + tif_Tag_Image_File \ + wmf_MS_Windows_Metafile \ + xbm_X_Consortium \ + xpm_XPM + +# ----------------------------------------------- +# count = 45 +F4_DRAWGRAPHICS = \ + BMP___MS_Windows \ + DXF___AutoCAD_Interchange \ + EMF___MS_Windows_Metafile \ + EPS___Encapsulated_PostScript \ + GIF___Graphics_Interchange \ + JPG___JPEG \ + MET___OS_2_Metafile \ + PBM___Portable_Bitmap \ + PCT___Mac_Pict \ + PCX___Zsoft_Paintbrush \ + PGM___Portable_Graymap \ + PNG___Portable_Network_Graphic \ + PPM___Portable_Pixelmap \ + PSD___Adobe_Photoshop \ + RAS___Sun_Rasterfile \ + SGF___StarOffice_Writer_SGF \ + SGV___StarDraw_2_0 \ + SVM___StarView_Metafile \ + TGA___Truevision_TARGA \ + TIF___Tag_Image_File \ + WMF___MS_Windows_Metafile \ + XBM___X_Consortium \ + XPM \ + draw_PCD_Photo_CD_Base \ + draw_PCD_Photo_CD_Base16 \ + draw_PCD_Photo_CD_Base4 \ + draw_bmp_Export \ + draw_emf_Export \ + draw_eps_Export \ + draw_flash_Export \ + draw_gif_Export \ + draw_html_Export \ + draw_jpg_Export \ + draw_met_Export \ + draw_pbm_Export \ + draw_pct_Export \ + draw_pgm_Export \ + draw_png_Export \ + draw_ppm_Export \ + draw_ras_Export \ + draw_svg_Export \ + draw_svm_Export \ + draw_tif_Export \ + draw_wmf_Export \ + draw_xpm_Export + +# ----------------------------------------------- +# count = 1 +F4_UI_DRAWGRAPHICS = \ + draw_html_Export_ui + +# ----------------------------------------------- +# count = 0 +L4_DRAWGRAPHICS = + +# ----------------------------------------------- +# count = 0 +C4_DRAWGRAPHICS = + +# ----------------------------------------------- +TYPES_4fcfg_drawgraphics = $(foreach,i,$(T4_DRAWGRAPHICS) types$/$i.xcu ) +FILTERS_4fcfg_drawgraphics = $(foreach,i,$(F4_DRAWGRAPHICS) filters$/$i.xcu ) +UI_FILTERS_4fcfg_drawgraphics = $(foreach,i,$(F4_UI_DRAWGRAPHICS) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_drawgraphics = $(foreach,i,$(L4_DRAWGRAPHICS) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_drawgraphics = $(foreach,i,$(C4_DRAWGRAPHICS) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_drawgraphics = \ + $(TYPES_4fcfg_drawgraphics) \ + $(FILTERS_4fcfg_drawgraphics) \ + $(UI_FILTERS_4fcfg_drawgraphics) \ + $(FRAMELOADERS_4fcfg_drawgraphics) \ + $(CONTENTHANDLERS_4fcfg_drawgraphics) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_drawgraphics) + +ALL_PACKAGES+=drawgraphics + diff --git a/filter/source/config/fragments/fcfg_global.mk b/filter/source/config/fragments/fcfg_global.mk new file mode 100644 index 000000000000..c0f2cbb90e2d --- /dev/null +++ b/filter/source/config/fragments/fcfg_global.mk @@ -0,0 +1,59 @@ +all_fragments+=global + +# ----------------------------------------------- +# count = 12 +T4_GLOBAL = \ + writer_Text \ + writer_StarOffice_XML_Writer \ + writer_globaldocument_StarOffice_XML_Writer_GlobalDocument \ + pdf_Portable_Document_Format \ + writerglobal8 \ + +# ----------------------------------------------- +# count = 12 +F4_GLOBAL = \ + Text__encoded___StarWriter_GlobalDocument_ \ + writer_globaldocument_StarOffice_XML_Writer \ + writer_globaldocument_StarOffice_XML_Writer_GlobalDocument \ + writer_globaldocument_pdf_Export \ + writerglobal8 \ + writerglobal8_writer \ + writerglobal8_HTML + +# ----------------------------------------------- +# count = 12 +F4_UI_GLOBAL = \ + Text__encoded___StarWriter_GlobalDocument__ui \ + writer_globaldocument_StarOffice_XML_Writer_ui \ + writer_globaldocument_StarOffice_XML_Writer_GlobalDocument_ui \ + writerglobal8_ui \ + writerglobal8_writer_ui + +# ----------------------------------------------- +# count = 0 +L4_GLOBAL = + +# ----------------------------------------------- +# count = 0 +C4_GLOBAL = + +# ----------------------------------------------- +TYPES_4fcfg_global = $(foreach,i,$(T4_GLOBAL) types$/$i.xcu ) +FILTERS_4fcfg_global = $(foreach,i,$(F4_GLOBAL) filters$/$i.xcu ) +UI_FILTERS_4fcfg_global = $(foreach,i,$(F4_UI_GLOBAL) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_global = $(foreach,i,$(L4_GLOBAL) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_global = $(foreach,i,$(C4_GLOBAL) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_global = \ + $(TYPES_4fcfg_global) \ + $(FILTERS_4fcfg_global) \ + $(UI_FILTERS_4fcfg_global) \ + $(FRAMELOADERS_4fcfg_global) \ + $(CONTENTHANDLERS_4fcfg_global) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_global) + +ALL_PACKAGES+=global + diff --git a/filter/source/config/fragments/fcfg_global_bf.mk b/filter/source/config/fragments/fcfg_global_bf.mk new file mode 100644 index 000000000000..371359937d5e --- /dev/null +++ b/filter/source/config/fragments/fcfg_global_bf.mk @@ -0,0 +1,55 @@ +all_fragments+=global_bf + + +# ----------------------------------------------- +# count = 5 +T4_GLOBAL_BF = \ + writer_StarWriter_30 \ + writer_StarWriter_40 \ + writer_globaldocument_StarWriter_40GlobalDocument \ + writer_StarWriter_50 \ + writer_globaldocument_StarWriter_50GlobalDocument + +# ----------------------------------------------- +# count = 5 +F4_GLOBAL_BF = \ + StarWriter_3_0__StarWriter_GlobalDocument_ \ + StarWriter_4_0__StarWriter_GlobalDocument_ \ + StarWriter_4_0_GlobalDocument \ + StarWriter_5_0__StarWriter_GlobalDocument_ \ + StarWriter_5_0_GlobalDocument + +# ----------------------------------------------- +# count = 2 +F4_UI_GLOBAL_BF = \ + StarWriter_4_0_GlobalDocument_ui \ + StarWriter_5_0_GlobalDocument_ui + +# ----------------------------------------------- +# count = 0 +L4_GLOBAL_BF = + +# ----------------------------------------------- +# count = 0 +C4_GLOBAL_BF = + +# ----------------------------------------------- +TYPES_4fcfg_global_bf = $(foreach,i,$(T4_GLOBAL_BF) types$/$i.xcu ) +FILTERS_4fcfg_global_bf = $(foreach,i,$(F4_GLOBAL_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_global_bf = $(foreach,i,$(F4_UI_GLOBAL_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_global_bf = $(foreach,i,$(L4_GLOBAL_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_global_bf = $(foreach,i,$(C4_GLOBAL_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_global_bf = \ + $(TYPES_4fcfg_global_bf) \ + $(FILTERS_4fcfg_global_bf) \ + $(UI_FILTERS_4fcfg_global_bf) \ + $(FRAMELOADERS_4fcfg_global_bf) \ + $(CONTENTHANDLERS_4fcfg_global_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_global_bf) + +ALL_PACKAGES+=global_bf + diff --git a/filter/source/config/fragments/fcfg_impress.mk b/filter/source/config/fragments/fcfg_impress.mk new file mode 100644 index 000000000000..f5c1c7de750c --- /dev/null +++ b/filter/source/config/fragments/fcfg_impress.mk @@ -0,0 +1,75 @@ +all_fragments+=impress + +# ----------------------------------------------- +# count = 19 +T4_IMPRESS = \ + draw_StarOffice_XML_Draw \ + impress_MS_PowerPoint_97 \ + impress_MS_PowerPoint_97_Vorlage \ + impress_StarOffice_XML_Impress \ + impress_StarOffice_XML_Impress_Template \ + pdf_Portable_Document_Format \ + pwp_PlaceWare\ + impress8\ + impress8_template\ + draw8\ + MS_PowerPoint_2007_XML\ + MS_PowerPoint_2007_XML_Template + +# ----------------------------------------------- +# count = 20 +F4_IMPRESS = \ + MS_PowerPoint_97 \ + MS_PowerPoint_97_Vorlage \ + impress_StarOffice_XML_Draw \ + StarOffice_XML__Impress_ \ + impress_StarOffice_XML_Impress_Template \ + impress_pdf_Export \ + placeware_Export\ + impress8\ + impress8_template\ + impress8_draw\ + impress_MS_PowerPoint_2007_XML\ + impress_MS_PowerPoint_2007_XML_Template + +# ----------------------------------------------- +# count = 12 +F4_UI_IMPRESS = \ + MS_PowerPoint_97_Vorlage_ui \ + impress_StarOffice_XML_Draw_ui \ + StarOffice_XML__Impress__ui \ + impress_StarOffice_XML_Impress_Template_ui \ + impress8_ui \ + impress8_template_ui \ + impress8_draw_ui \ + impress_MS_PowerPoint_2007_XML_ui \ + impress_MS_PowerPoint_2007_XML_Template_ui + +# ----------------------------------------------- +# count = 0 +L4_GLOBAL = + +# ----------------------------------------------- +# count = 0 +C4_GLOBAL = + +# ----------------------------------------------- +TYPES_4fcfg_impress = $(foreach,i,$(T4_IMPRESS) types$/$i.xcu ) +FILTERS_4fcfg_impress = $(foreach,i,$(F4_IMPRESS) filters$/$i.xcu ) +UI_FILTERS_4fcfg_impress = $(foreach,i,$(F4_UI_IMPRESS) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_impress = $(foreach,i,$(L4_IMPRESS) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_impress = $(foreach,i,$(C4_IMPRESS) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_impress = \ + $(TYPES_4fcfg_impress) \ + $(FILTERS_4fcfg_impress) \ + $(UI_FILTERS_4fcfg_impress) \ + $(FRAMELOADERS_4fcfg_impress) \ + $(CONTENTHANDLERS_4fcfg_impress) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_impress) + +ALL_PACKAGES+=impress + diff --git a/filter/source/config/fragments/fcfg_impress_bf.mk b/filter/source/config/fragments/fcfg_impress_bf.mk new file mode 100644 index 000000000000..050aeccff300 --- /dev/null +++ b/filter/source/config/fragments/fcfg_impress_bf.mk @@ -0,0 +1,66 @@ +all_fragments+=impress_bf + + +# ----------------------------------------------- +# count = 9 +T4_IMPRESS_BF = \ + draw_StarDraw_30 \ + draw_StarDraw_30_Vorlage \ + draw_StarDraw_50 \ + draw_StarDraw_50_Vorlage \ + impress_StarImpress_40 \ + impress_StarImpress_40_Vorlage \ + impress_StarImpress_50 \ + impress_StarImpress_50_Vorlage \ + impress_StarImpress_50_packed + +# ----------------------------------------------- +# count = 9 +F4_IMPRESS_BF = \ + StarDraw_3_0_Vorlage__StarImpress_ \ + StarDraw_3_0__StarImpress_ \ + StarDraw_5_0_Vorlage__StarImpress_ \ + StarDraw_5_0__StarImpress_ \ + StarImpress_4_0 \ + StarImpress_4_0_Vorlage \ + StarImpress_5_0 \ + StarImpress_5_0_Vorlage \ + StarImpress_5_0__packed_ + +# ----------------------------------------------- +# count = 5 +F4_UI_IMPRESS_BF = \ + StarDraw_3_0_Vorlage__StarImpress__ui \ + StarDraw_5_0_Vorlage__StarImpress__ui \ + StarImpress_4_0_Vorlage_ui \ + StarImpress_5_0_Vorlage_ui \ + StarImpress_5_0__packed__ui \ + +# ----------------------------------------------- +# count = 0 +L4_IMPRESS_BF = + +# ----------------------------------------------- +# count = 0 +C4_IMPRESS_BF = + +# ----------------------------------------------- +TYPES_4fcfg_impress_bf = $(foreach,i,$(T4_IMPRESS_BF) types$/$i.xcu ) +FILTERS_4fcfg_impress_bf = $(foreach,i,$(F4_IMPRESS_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_impress_bf = $(foreach,i,$(F4_UI_IMPRESS_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_impress_bf = $(foreach,i,$(L4_IMPRESS_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_impress_bf = $(foreach,i,$(C4_IMPRESS_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_impress_bf = \ + $(TYPES_4fcfg_impress_bf) \ + $(FILTERS_4fcfg_impress_bf) \ + $(UI_FILTERS_4fcfg_impress_bf) \ + $(FRAMELOADERS_4fcfg_impress_bf) \ + $(CONTENTHANDLERS_4fcfg_impress_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_impress_bf) + +ALL_PACKAGES+=impress_bf + diff --git a/filter/source/config/fragments/fcfg_impressgraphics.mk b/filter/source/config/fragments/fcfg_impressgraphics.mk new file mode 100644 index 000000000000..a05aac7e7ed4 --- /dev/null +++ b/filter/source/config/fragments/fcfg_impressgraphics.mk @@ -0,0 +1,83 @@ +all_fragments+=impressgraphics + +# ----------------------------------------------- +# count = 20 +T4_IMPRESSGRAPHICS = \ + bmp_MS_Windows \ + emf_MS_Windows_Metafile \ + eps_Encapsulated_PostScript \ + gif_Graphics_Interchange \ + graphic_HTML \ + graphic_SWF \ + impress_CGM_Computer_Graphics_Metafile \ + jpg_JPEG \ + met_OS2_Metafile \ + pbm_Portable_Bitmap \ + pct_Mac_Pict \ + pgm_Portable_Graymap \ + png_Portable_Network_Graphic \ + ppm_Portable_Pixelmap \ + ras_Sun_Rasterfile \ + svg_Scalable_Vector_Graphics \ + svm_StarView_Metafile \ + tif_Tag_Image_File \ + wmf_MS_Windows_Metafile \ + xpm_XPM + +# ----------------------------------------------- +# count = 20 +F4_IMPRESSGRAPHICS = \ + CGM___Computer_Graphics_Metafile \ + impress_bmp_Export \ + impress_emf_Export \ + impress_eps_Export \ + impress_flash_Export \ + impress_gif_Export \ + impress_html_Export \ + impress_jpg_Export \ + impress_met_Export \ + impress_pbm_Export \ + impress_pct_Export \ + impress_pgm_Export \ + impress_png_Export \ + impress_ppm_Export \ + impress_ras_Export \ + impress_svg_Export \ + impress_svm_Export \ + impress_tif_Export \ + impress_wmf_Export \ + impress_xpm_Export + +# ----------------------------------------------- +# count = 1 +F4_UI_IMPRESSGRAPHICS = \ + impress_html_Export_ui + +# ----------------------------------------------- +# count = 0 +L4_IMPRESSGRAPHICS = + +# ----------------------------------------------- +# count = 0 +C4_IMPRESSGRAPHICS = + +# ----------------------------------------------- +TYPES_4fcfg_impressgraphics = $(foreach,i,$(T4_IMPRESSGRAPHICS) types$/$i.xcu ) +FILTERS_4fcfg_impressgraphics = $(foreach,i,$(F4_IMPRESSGRAPHICS) filters$/$i.xcu ) +UI_FILTERS_4fcfg_impressgraphics = $(foreach,i,$(F4_UI_IMPRESSGRAPHICS) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_impressgraphics = $(foreach,i,$(L4_IMPRESSGRAPHICS) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_impressgraphics = $(foreach,i,$(C4_IMPRESSGRAPHICS) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_impressgraphics = \ + $(TYPES_4fcfg_impressgraphics) \ + $(FILTERS_4fcfg_impressgraphics) \ + $(UI_FILTERS_4fcfg_impressgraphics) \ + $(FRAMELOADERS_4fcfg_impressgraphics) \ + $(CONTENTHANDLERS_4fcfg_impressgraphics) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_impressgraphics) + +ALL_PACKAGES+=impressgraphics + diff --git a/filter/source/config/fragments/fcfg_internalgraphics.mk b/filter/source/config/fragments/fcfg_internalgraphics.mk new file mode 100644 index 000000000000..ae978f0ca06c --- /dev/null +++ b/filter/source/config/fragments/fcfg_internalgraphics.mk @@ -0,0 +1,109 @@ +# do not add internal filter +#all_fragments+=internalgraphics + +# ----------------------------------------------- +# count = 27 +T4_INTERNALGRAPHICS = \ + bmp_MS_Windows \ + dxf_AutoCAD_Interchange \ + emf_MS_Windows_Metafile \ + eps_Encapsulated_PostScript \ + gif_Graphics_Interchange \ + jpg_JPEG \ + met_OS2_Metafile \ + pbm_Portable_Bitmap \ + pcd_Photo_CD_Base \ + pcd_Photo_CD_Base16 \ + pcd_Photo_CD_Base4 \ + pct_Mac_Pict \ + pcx_Zsoft_Paintbrush \ + pgm_Portable_Graymap \ + png_Portable_Network_Graphic \ + ppm_Portable_Pixelmap \ + psd_Adobe_Photoshop \ + ras_Sun_Rasterfile \ + sgf_StarOffice_Writer_SGF \ + sgv_StarDraw_20 \ + svg_Scalable_Vector_Graphics \ + svm_StarView_Metafile \ + tga_Truevision_TARGA \ + tif_Tag_Image_File \ + wmf_MS_Windows_Metafile \ + xbm_X_Consortium \ + xpm_XPM + +# ----------------------------------------------- +# count = 43 +F4_INTERNALGRAPHICS = \ + bmp_Export \ + bmp_Import \ + dxf_Import \ + emf_Export \ + emf_Import \ + eps_Export \ + eps_Import \ + gif_Export \ + gif_Import \ + jpg_Export \ + jpg_Import \ + met_Export \ + met_Import \ + pbm_Export \ + pbm_Import \ + pcd_Import_Base \ + pcd_Import_Base4 \ + pcd_Import_Base16 \ + pct_Export \ + pct_Import \ + pcx_Import \ + pgm_Export \ + pgm_Import \ + png_Export \ + png_Import \ + ppm_Export \ + ppm_Import \ + psd_Import \ + ras_Export \ + ras_Import \ + sgf_Import \ + sgv_Import \ + svg_Export \ + svm_Export \ + svm_Import \ + tga_Import \ + tif_Export \ + tif_Import \ + wmf_Export \ + wmf_Import \ + xbm_Import \ + xpm_Export \ + xpm_Import + +# ----------------------------------------------- +# count = 0 +L4_INTERNALGRAPHICS = + +# ----------------------------------------------- +# count = 0 +C4_INTERNALGRAPHICS = + +# ----------------------------------------------- +TYPES_4fcfg_internalgraphics = $(foreach,i,$(T4_INTERNALGRAPHICS) types$/$i.xcu ) +FILTERS_4fcfg_internalgraphics = $(foreach,i,$(F4_INTERNALGRAPHICS) internalgraphicfilters$/$i.xcu ) +FRAMELOADERS_4fcfg_internalgraphics = $(foreach,i,$(L4_INTERNALGRAPHICS) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_internalgraphics = $(foreach,i,$(C4_INTERNALGRAPHICS) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_internalgraphics = \ + $(TYPES_4fcfg_internalgraphics) \ + $(FILTERS_4fcfg_internalgraphics) \ + $(FRAMELOADERS_4fcfg_internalgraphics) \ + $(CONTENTHANDLERS_4fcfg_internalgraphics) + +# do not add internal filter +# ALL_UI_FILTERS+= + +# do not add internal filter +# ALL_PACKAGES+=internalgraphics + diff --git a/filter/source/config/fragments/fcfg_math.mk b/filter/source/config/fragments/fcfg_math.mk new file mode 100644 index 000000000000..07747769b66a --- /dev/null +++ b/filter/source/config/fragments/fcfg_math.mk @@ -0,0 +1,55 @@ +all_fragments+=math + + +# ----------------------------------------------- +# count = 5 +T4_MATH = \ + math_MathML_XML_Math \ + math_MathType_3x \ + math_StarOffice_XML_Math \ + pdf_Portable_Document_Format \ + math8 + +# ----------------------------------------------- +# count = 5 +F4_MATH = \ + MathML_XML__Math_ \ + MathType_3_x \ + StarOffice_XML__Math_ \ + math_pdf_Export \ + math8 + +# ----------------------------------------------- +# count = 2 +F4_UI_MATH = \ + StarOffice_XML__Math__ui \ + math8_ui + +# ----------------------------------------------- +# count = 0 +L4_MATH = + +# ----------------------------------------------- +# count = 0 +C4_MATH = + +# ----------------------------------------------- +TYPES_4fcfg_math = $(foreach,i,$(T4_MATH) types$/$i.xcu ) +FILTERS_4fcfg_math = $(foreach,i,$(F4_MATH) filters$/$i.xcu ) +UI_FILTERS_4fcfg_math = $(foreach,i,$(F4_UI_MATH) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_math = $(foreach,i,$(L4_MATH) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_math = $(foreach,i,$(C4_MATH) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_math = \ + $(TYPES_4fcfg_math) \ + $(FILTERS_4fcfg_math) \ + $(UI_FILTERS_4fcfg_math) \ + $(FRAMELOADERS_4fcfg_math) \ + $(CONTENTHANDLERS_4fcfg_math) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_math) + +ALL_PACKAGES+=math + diff --git a/filter/source/config/fragments/fcfg_math_bf.mk b/filter/source/config/fragments/fcfg_math_bf.mk new file mode 100644 index 000000000000..f01fb997653b --- /dev/null +++ b/filter/source/config/fragments/fcfg_math_bf.mk @@ -0,0 +1,50 @@ +all_fragments+=math_bf + +# ----------------------------------------------- +# count = 4 +T4_MATH_BF = \ + math_StarMath_20 \ + math_StarMath_30 \ + math_StarMath_40 \ + math_StarMath_50 + +# ----------------------------------------------- +# count = 4 +F4_MATH_BF = \ + StarMath_2_0 \ + StarMath_3_0 \ + StarMath_4_0 \ + StarMath_5_0 + +# ----------------------------------------------- +# count = 0 +F4_UI_MATH_BF = + +# ----------------------------------------------- +# count = 0 +L4_MATH_BF = + +# ----------------------------------------------- +# count = 0 +C4_MATH_BF = + +# ----------------------------------------------- +TYPES_4fcfg_math_bf = $(foreach,i,$(T4_MATH_BF) types$/$i.xcu ) +FILTERS_4fcfg_math_bf = $(foreach,i,$(F4_MATH_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_math_bf = $(foreach,i,$(F4_UI_MATH_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_math_bf = $(foreach,i,$(L4_MATH_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_math_bf = $(foreach,i,$(C4_MATH_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_math_bf = \ + $(TYPES_4fcfg_math_bf) \ + $(FILTERS_4fcfg_math_bf) \ + $(UI_FILTERS_4fcfg_math_bf) \ + $(FRAMELOADERS_4fcfg_math_bf) \ + $(CONTENTHANDLERS_4fcfg_math_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_math_bf) + +ALL_PACKAGES+=math_bf + diff --git a/filter/source/config/fragments/fcfg_palm.mk b/filter/source/config/fragments/fcfg_palm.mk new file mode 100644 index 000000000000..8b43b542c896 --- /dev/null +++ b/filter/source/config/fragments/fcfg_palm.mk @@ -0,0 +1,44 @@ +all_fragments+=palm + +# ----------------------------------------------- +# count = 1 +T4_PALM = \ + writer_AportisDoc_PalmDB_File + +# ----------------------------------------------- +# count = 1 +F4_PALM = \ + AportisDoc_Palm_DB + +# ----------------------------------------------- +# count = 0 +F4_UI_PALM = + +# ----------------------------------------------- +# count = 0 +L4_PALM = + +# ----------------------------------------------- +# count = 0 +C4_PALM = + +# ----------------------------------------------- +TYPES_4fcfg_palm = $(foreach,i,$(T4_PALM) types$/$i.xcu ) +FILTERS_4fcfg_palm = $(foreach,i,$(F4_PALM) filters$/$i.xcu ) +UI_FILTERS_4fcfg_palm = $(foreach,i,$(F4_UI_PALM) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_palm = $(foreach,i,$(L4_PALM) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_palm = $(foreach,i,$(C4_PALM) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_palm = \ + $(TYPES_4fcfg_palm) \ + $(FILTERS_4fcfg_palm) \ + $(UI_FILTERS_4fcfg_palm) \ + $(FRAMELOADERS_4fcfg_palm) \ + $(CONTENTHANDLERS_4fcfg_palm) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_palm) + +ALL_PACKAGES+=palm + diff --git a/filter/source/config/fragments/fcfg_pocketexcel.mk b/filter/source/config/fragments/fcfg_pocketexcel.mk new file mode 100644 index 000000000000..02ec4fec488e --- /dev/null +++ b/filter/source/config/fragments/fcfg_pocketexcel.mk @@ -0,0 +1,44 @@ +all_fragments+=pocketexcel + +# ----------------------------------------------- +# count = 1 +T4_POCKETEXCEL = \ + calc_Pocket_Excel_File + +# ----------------------------------------------- +# count = 1 +F4_POCKETEXCEL = \ + Pocket_Excel + +# ----------------------------------------------- +# count = 0 +F4_UI_POCKETEXCEL = + +# ----------------------------------------------- +# count = 0 +L4_POCKETEXCEL = + +# ----------------------------------------------- +# count = 0 +C4_POCKETEXCEL = + +# ----------------------------------------------- +TYPES_4fcfg_pocketexcel = $(foreach,i,$(T4_POCKETEXCEL) types$/$i.xcu ) +FILTERS_4fcfg_pocketexcel = $(foreach,i,$(F4_POCKETEXCEL) filters$/$i.xcu ) +UI_FILTERS_4fcfg_pocketexcel = $(foreach,i,$(F4_UI_POCKETEXCEL) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_pocketexcel = $(foreach,i,$(L4_POCKETEXCEL) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_pocketexcel = $(foreach,i,$(C4_POCKETEXCEL) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_pocketexcel = \ + $(TYPES_4fcfg_pocketexcel) \ + $(FILTERS_4fcfg_pocketexcel) \ + $(UI_FILTERS_4fcfg_pocketexcel) \ + $(FRAMELOADERS_4fcfg_pocketexcel) \ + $(CONTENTHANDLERS_4fcfg_pocketexcel) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_pocketexcel) + +ALL_PACKAGES+=pocketexcel + diff --git a/filter/source/config/fragments/fcfg_pocketword.mk b/filter/source/config/fragments/fcfg_pocketword.mk new file mode 100644 index 000000000000..6060262147f7 --- /dev/null +++ b/filter/source/config/fragments/fcfg_pocketword.mk @@ -0,0 +1,44 @@ +all_fragments+=pocketword + +# ----------------------------------------------- +# count = 1 +T4_POCKETWORD = \ + writer_PocketWord_File + +# ----------------------------------------------- +# count = 1 +F4_POCKETWORD = \ + PocketWord_File + +# ----------------------------------------------- +# count = 0 +F4_UI_POCKETWORD = + +# ----------------------------------------------- +# count = 0 +L4_POCKETWORD = + +# ----------------------------------------------- +# count = 0 +C4_POCKETWORD = + +# ----------------------------------------------- +TYPES_4fcfg_pocketword = $(foreach,i,$(T4_POCKETWORD) types$/$i.xcu ) +FILTERS_4fcfg_pocketword = $(foreach,i,$(F4_POCKETWORD) filters$/$i.xcu ) +UI_FILTERS_4fcfg_pocketword = $(foreach,i,$(F4_UI_POCKETWORD) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_pocketword = $(foreach,i,$(L4_POCKETWORD) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_pocketword = $(foreach,i,$(C4_POCKETWORD) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_pocketword = \ + $(TYPES_4fcfg_pocketword) \ + $(FILTERS_4fcfg_pocketword) \ + $(UI_FILTERS_4fcfg_pocketword) \ + $(FRAMELOADERS_4fcfg_pocketword) \ + $(CONTENTHANDLERS_4fcfg_pocketword) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_pocketword) + +ALL_PACKAGES+=pocketword + diff --git a/filter/source/config/fragments/fcfg_w4w.mk b/filter/source/config/fragments/fcfg_w4w.mk new file mode 100644 index 000000000000..dd40b5938d80 --- /dev/null +++ b/filter/source/config/fragments/fcfg_w4w.mk @@ -0,0 +1,260 @@ +all_fragments+=w4w + +# ----------------------------------------------- +# count = 109 +T4_W4W = \ + writer_Ami_Pro_1x_31_W4W \ + writer_CTOS_DEF_W4W \ + writer_Claris_Works_W4W \ + writer_DCA_Revisable_Form_Text_W4W \ + writer_DCA_with_Display_Write_5_W4W \ + writer_DCAFFT_Final_Form_Text_W4W \ + writer_DEC_DX_W4W \ + writer_DEC_WPS_PLUS_W4W \ + writer_DataGeneral_CEO_Write_W4W \ + writer_DisplayWrite_20_4x_W4W \ + writer_DisplayWrite_5x_W4W \ + writer_EBCDIC_W4W \ + writer_Enable_W4W \ + writer_Frame_Maker_MIF_30_W4W \ + writer_Frame_Maker_MIF_40_W4W \ + writer_Frame_Maker_MIF_50_W4W \ + writer_Frame_Work_III_W4W \ + writer_Frame_Work_IV_W4W \ + writer_HP_AdvanceWrite_Plus_W4W \ + writer_ICL_Office_Power_6_W4W \ + writer_ICL_Office_Power_7_W4W \ + writer_Interleaf_W4W \ + writer_Interleaf_5_6_W4W \ + writer_Legacy_Winstar_onGO_W4W \ + writer_Lotus_Manuscript_W4W \ + writer_MASS_11_Rel_80_83_W4W \ + writer_MASS_11_Rel_85_90_W4W \ + writer_MS_MacWord_30_W4W \ + writer_MS_MacWord_40_W4W \ + writer_MS_MacWord_5x_W4W \ + writer_MS_WinWord_1x_W4W \ + writer_MS_WinWord_2x_W4W \ + writer_MS_Word_3x_W4W \ + writer_MS_Word_4x_W4W \ + writer_MS_Word_5x_W4W \ + writer_MS_Word_6x_W4W \ + writer_MS_Works_20_DOS_W4W \ + writer_MS_Works_30_Win_W4W \ + writer_MS_Works_40_Mac_W4W \ + writer_Mac_Write_4x_50_W4W \ + writer_Mac_Write_II_W4W \ + writer_Mac_Write_Pro_W4W \ + writer_MultiMate_33_W4W \ + writer_MultiMate_4_W4W \ + writer_MultiMate_Adv_36_W4W \ + writer_MultiMate_Adv_II_37_W4W \ + writer_NAVY_DIF_W4W \ + writer_OfficeWriter_40_W4W \ + writer_OfficeWriter_50_W4W \ + writer_OfficeWriter_6x_W4W \ + writer_PFS_First_Choice_10_W4W \ + writer_PFS_First_Choice_20_W4W \ + writer_PFS_First_Choice_30_W4W \ + writer_PFS_Write_W4W \ + writer_Peach_Text_W4W \ + writer_Professional_Write_10_W4W \ + writer_Professional_Write_2x_W4W \ + writer_Professional_Write_Plus_W4W \ + writer_QA_Write_10_30_W4W \ + writer_QA_Write_40_W4W \ + writer_Rapid_File_10_W4W \ + writer_Rapid_File_12_W4W \ + writer_Samna_Word_IV_IV_Plus_W4W \ + writer_Total_Word_W4W \ + writer_Uniplex_V7_V8_W4W \ + writer_Uniplex_onGO_W4W \ + writer_VolksWriter_3_and_4_W4W \ + writer_VolksWriter_Deluxe_W4W \ + writer_WITA_W4W \ + writer_Wang_II_SWP_W4W \ + writer_Wang_PC_W4W \ + writer_Wang_WP_Plus_W4W \ + writer_Win_Write_3x_W4W \ + writer_WiziWord_30_W4W \ + writer_WordPerfect_Win_51_52_W4W \ + writer_WordPerfect_Win_60_W4W \ + writer_WordPerfect_Win_61_W4W \ + writer_WordPerfect_Win_70_W4W \ + writer_WordPerfect_41_W4W \ + writer_WordPerfect_42_W4W \ + writer_WordPerfect_50_W4W \ + writer_WordPerfect_51_W4W \ + writer_WordPerfect_60_W4W \ + writer_WordPerfect_61_W4W \ + writer_WordPerfect_Mac_1_W4W \ + writer_WordPerfect_Mac_2_W4W \ + writer_WordPerfect_Mac_3_W4W \ + writer_WordStar_Win_1x_20_W4W \ + writer_WordStar_2000_Rel_30_W4W \ + writer_WordStar_2000_Rel_35_W4W \ + writer_WordStar_33x_W4W \ + writer_WordStar_345_W4W \ + writer_WordStar_40_W4W \ + writer_WordStar_50_W4W \ + writer_WordStar_55_W4W \ + writer_WordStar_60_W4W \ + writer_WordStar_70_W4W \ + writer_WriteNow_30_Macintosh_W4W \ + writer_Writing_Assistant_W4W \ + writer_XEROX_XIF_50_Illustrator_W4W \ + writer_XEROX_XIF_50_W4W \ + writer_XEROX_XIF_60_Color_Bitmap_W4W \ + writer_XEROX_XIF_60_Res_Graphic_W4W \ + writer_XyWrite_Win_10_W4W \ + writer_XyWrite_III_W4W \ + writer_XyWrite_IIIP_W4W \ + writer_XyWrite_IV_W4W \ + writer_XyWrite_Sig_Win_W4W \ + writer_XyWrite_Signature_W4W + +# ----------------------------------------------- +# count = 109 +F4_W4W = \ + Ami_Pro_1_x_3_1__W4W_ \ + CTOS_DEF__W4W_ \ + Claris_Works__W4W_ \ + DCA_Revisable_Form_Text__W4W_ \ + DCA_with_Display_Write_5__W4W_ \ + DCA_FFT_Final_Form_Text__W4W_ \ + DEC_DX__W4W_ \ + DEC_WPS_PLUS__W4W_ \ + DataGeneral_CEO_Write__W4W_ \ + DisplayWrite_2_0_4_x__W4W_ \ + DisplayWrite_5_x__W4W_ \ + EBCDIC__W4W_ \ + Enable__W4W_ \ + Frame_Maker_MIF_3_0__W4W_ \ + Frame_Maker_MIF_4_0__W4W_ \ + Frame_Maker_MIF_5_0__W4W_ \ + Frame_Work_III__W4W_ \ + Frame_Work_IV___W4W_ \ + HP_AdvanceWrite_Plus__W4W_ \ + ICL_Office_Power_6__W4W_ \ + ICL_Office_Power_7__W4W_ \ + Interleaf__W4W_ \ + Interleaf_5___6__W4W_ \ + Legacy_Winstar_onGO__W4W_ \ + Lotus_Manuscript__W4W_ \ + MASS_11_Rel__8_0_8_3__W4W_ \ + MASS_11_Rel__8_5_9_0__W4W_ \ + MS_MacWord_3_0__W4W_ \ + MS_MacWord_4_0__W4W_ \ + MS_MacWord_5_x__W4W_ \ + MS_WinWord_1_x__W4W_ \ + MS_WinWord_2_x__W4W_ \ + MS_Word_3_x__W4W_ \ + MS_Word_4_x__W4W_ \ + MS_Word_5_x__W4W_ \ + MS_Word_6_x__W4W_ \ + MS_Works_2_0_DOS__W4W_ \ + MS_Works_3_0_Win__W4W_ \ + MS_Works_4_0_Mac__W4W_ \ + Mac_Write_4_x_5_0__W4W_ \ + Mac_Write_II__W4W_ \ + Mac_Write_Pro__W4W_ \ + MultiMate_3_3__W4W_ \ + MultiMate_4__W4W_ \ + MultiMate_Adv__3_6__W4W_ \ + MultiMate_Adv__II_3_7__W4W_ \ + NAVY_DIF__W4W_ \ + OfficeWriter_4_0__W4W_ \ + OfficeWriter_5_0__W4W_ \ + OfficeWriter_6_x__W4W_ \ + PFS_First_Choice_1_0__W4W_ \ + PFS_First_Choice_2_0__W4W_ \ + PFS_First_Choice_3_0__W4W_ \ + PFS_Write__W4W_ \ + Peach_Text__W4W_ \ + Professional_Write_1_0__W4W_ \ + Professional_Write_2_x__W4W_ \ + Professional_Write_Plus__W4W_ \ + Q_A_Write_1_0_3_0__W4W_ \ + Q_A_Write_4_0__W4W_ \ + Rapid_File_1_0__W4W_ \ + Rapid_File_1_2__W4W_ \ + Samna_Word_IV_IV_Plus__W4W_ \ + Total_Word__W4W_ \ + Uniplex_V7_V8__W4W_ \ + Uniplex_onGO__W4W_ \ + VolksWriter_3_and_4__W4W_ \ + VolksWriter_Deluxe__W4W_ \ + WITA__W4W_ \ + Wang_II_SWP__W4W_ \ + Wang_PC__W4W_ \ + Wang_WP_Plus__W4W_ \ + Win_Write_3_x__W4W_ \ + WiziWord_3_0__W4W_ \ + WordPerfect__Win__5_1_5_2__W4W_ \ + WordPerfect__Win__6_0__W4W_ \ + WordPerfect__Win__6_1__W4W_ \ + WordPerfect__Win__7_0__W4W_ \ + WordPerfect_4_1__W4W_ \ + WordPerfect_4_2__W4W_ \ + WordPerfect_5_0__W4W_ \ + WordPerfect_5_1__W4W_ \ + WordPerfect_6_0__W4W_ \ + WordPerfect_6_1__W4W_ \ + WordPerfect_Mac_1__W4W_ \ + WordPerfect_Mac_2__W4W_ \ + WordPerfect_Mac_3__W4W_ \ + WordStar__Win__1_x_2_0__W4W_ \ + WordStar_2000_Rel__3_0__W4W_ \ + WordStar_2000_Rel__3_5__W4W_ \ + WordStar_3_3x__W4W_ \ + WordStar_3_45__W4W_ \ + WordStar_4_0___W4W_ \ + WordStar_5_0___W4W_ \ + WordStar_5_5___W4W_ \ + WordStar_6_0___W4W_ \ + WordStar_7_0___W4W_ \ + WriteNow_3_0__Macintosh___W4W_ \ + Writing_Assistant__W4W_ \ + XEROX_XIF_5_0__Illustrator___W4W_ \ + XEROX_XIF_5_0__W4W_ \ + XEROX_XIF_6_0__Color_Bitmap___W4W_ \ + XEROX_XIF_6_0__Res_Graphic___W4W_ \ + XyWrite__Win__1_0__W4W_ \ + XyWrite_III___W4W_ \ + XyWrite_III____W4W_ \ + XyWrite_IV__W4W_ \ + XyWrite_Sig___Win___W4W_ \ + XyWrite_Signature__W4W_ + +# ----------------------------------------------- +# count = 0 +F4_UI_W4W = + +# ----------------------------------------------- +# count = 0 +L4_W4W = + +# ----------------------------------------------- +# count = 0 +C4_W4W = + +# ----------------------------------------------- +TYPES_4fcfg_w4w = $(foreach,i,$(T4_W4W) types$/$i.xcu ) +FILTERS_4fcfg_w4w = $(foreach,i,$(F4_W4W) filters$/$i.xcu ) +UI_FILTERS_4fcfg_w4w = $(foreach,i,$(F4_UI_W4W) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_w4w = $(foreach,i,$(L4_W4W) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_w4w = $(foreach,i,$(C4_W4W) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_w4w = \ + $(TYPES_4fcfg_w4w) \ + $(FILTERS_4fcfg_w4w) \ + $(UI_FILTERS_4fcfg_w4w) \ + $(FRAMELOADERS_4fcfg_w4w) \ + $(CONTENTHANDLERS_4fcfg_w4w) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_w4w) + +ALL_PACKAGES+=w4w + diff --git a/filter/source/config/fragments/fcfg_web.mk b/filter/source/config/fragments/fcfg_web.mk new file mode 100644 index 000000000000..c333635228c0 --- /dev/null +++ b/filter/source/config/fragments/fcfg_web.mk @@ -0,0 +1,65 @@ +all_fragments+=web + +# ----------------------------------------------- +# count = 12 +T4_WEB = \ + writer_web_HTML \ + writer_Text \ + writer_web_HTML_help \ + writer_StarOffice_XML_Writer \ + writer_web_StarOffice_XML_Writer_Web_Template \ + pdf_Portable_Document_Format\ + writerweb8_writer_template + +# ----------------------------------------------- +# count = 14 +F4_WEB = \ + HTML \ + Text__StarWriter_Web_ \ + Text__encoded___StarWriter_Web_ \ + writer_web_HTML_help \ + writer_web_StarOffice_XML_Writer \ + writer_web_StarOffice_XML_Writer_Web_Template \ + writer_web_pdf_Export\ + writerweb8_writer_template\ + writerweb8_writer + +# ----------------------------------------------- +# count = 9 +F4_UI_WEB = \ + HTML_ui \ + Text__StarWriter_Web__ui \ + Text__encoded___StarWriter_Web__ui \ + writer_web_StarOffice_XML_Writer_ui \ + writer_web_StarOffice_XML_Writer_Web_Template_ui \ + writerweb8_writer_template_ui \ + writerweb8_writer_ui + +# ----------------------------------------------- +# count = 0 +L4_WEB = + +# ----------------------------------------------- +# count = 0 +C4_WEB = + +# ----------------------------------------------- +TYPES_4fcfg_web = $(foreach,i,$(T4_WEB) types$/$i.xcu ) +FILTERS_4fcfg_web = $(foreach,i,$(F4_WEB) filters$/$i.xcu ) +UI_FILTERS_4fcfg_web = $(foreach,i,$(F4_UI_WEB) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_web = $(foreach,i,$(L4_WEB) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_web = $(foreach,i,$(C4_WEB) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_web = \ + $(TYPES_4fcfg_web) \ + $(FILTERS_4fcfg_web) \ + $(UI_FILTERS_4fcfg_web) \ + $(FRAMELOADERS_4fcfg_web) \ + $(CONTENTHANDLERS_4fcfg_web) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_web) + +ALL_PACKAGES+=web + diff --git a/filter/source/config/fragments/fcfg_web_bf.mk b/filter/source/config/fragments/fcfg_web_bf.mk new file mode 100644 index 000000000000..78d43d4360cb --- /dev/null +++ b/filter/source/config/fragments/fcfg_web_bf.mk @@ -0,0 +1,54 @@ +all_fragments+=web_bf + +# ----------------------------------------------- +# count = 5 +T4_WEB_BF = \ + writer_StarWriter_30 \ + writer_StarWriter_40 \ + writer_StarWriter_50 \ + writer_web_StarWriterWeb_40_VorlageTemplate \ + writer_web_StarWriterWeb_50_VorlageTemplate + +# ----------------------------------------------- +# count = 5 +F4_WEB_BF = \ + StarWriter_3_0__StarWriter_Web_ \ + StarWriter_4_0__StarWriter_Web_ \ + StarWriter_5_0__StarWriter_Web_ \ + StarWriter_Web_4_0_Vorlage_Template \ + StarWriter_Web_5_0_Vorlage_Template + +# ----------------------------------------------- +# count = 2 +F4_UI_WEB_BF = \ + StarWriter_Web_4_0_Vorlage_Template_ui \ + StarWriter_Web_5_0_Vorlage_Template_ui + +# ----------------------------------------------- +# count = 0 +L4_WEB_BF = + +# ----------------------------------------------- +# count = 0 +C4_WEB_BF = + +# ----------------------------------------------- +TYPES_4fcfg_web_bf = $(foreach,i,$(T4_WEB_BF) types$/$i.xcu ) +FILTERS_4fcfg_web_bf = $(foreach,i,$(F4_WEB_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_web_bf = $(foreach,i,$(F4_UI_WEB_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_web_bf = $(foreach,i,$(L4_WEB_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_web_bf = $(foreach,i,$(C4_WEB_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_web_bf = \ + $(TYPES_4fcfg_web_bf) \ + $(FILTERS_4fcfg_web_bf) \ + $(UI_FILTERS_4fcfg_web_bf) \ + $(FRAMELOADERS_4fcfg_web_bf) \ + $(CONTENTHANDLERS_4fcfg_web_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_web_bf) + +ALL_PACKAGES+=web_bf + diff --git a/filter/source/config/fragments/fcfg_writer.mk b/filter/source/config/fragments/fcfg_writer.mk new file mode 100644 index 000000000000..220788049f79 --- /dev/null +++ b/filter/source/config/fragments/fcfg_writer.mk @@ -0,0 +1,106 @@ +all_fragments+=writer + +# ----------------------------------------------- +# count = 39 +T4_WRITER = \ + writer_web_HTML \ + writer_Lotus_1_2_3_10_DOS_StarWriter \ + writer_Lotus_1_2_3_10_WIN_StarWriter \ + calc_MS_Excel_40 \ + calc_MS_Excel_5095 \ + calc_MS_Excel_95 \ + writer_MS_WinWord_5 \ + writer_MS_WinWord_60 \ + writer_MS_Word_95 \ + writer_MS_Word_95_Vorlage \ + writer_MS_Word_97 \ + writer_MS_Word_97_Vorlage \ + writer_Rich_Text_Format \ + writer_StarOffice_XML_Writer \ + writer_WordPerfect_Document \ + writer_T602_Document \ + writer_Text \ + writer_Text_encoded \ + writer_MIZI_Hwp_97 \ + writer_StarOffice_XML_Writer_Template \ + pdf_Portable_Document_Format\ + writer8_template\ + writer8 \ + writer_MS_Word_2003_XML \ + writer_MS_Word_2007_XML \ + writer_MS_Word_2007_XML_Template + +# ----------------------------------------------- +# count = 39 +F4_WRITER = \ + HTML__StarWriter_ \ + Lotus_1_2_3_1_0__DOS___StarWriter_ \ + Lotus_1_2_3_1_0__WIN___StarWriter_ \ + MS_Excel_4_0__StarWriter_ \ + MS_Excel_5_0__StarWriter_ \ + MS_Excel_95__StarWriter_ \ + MS_WinWord_5 \ + MS_WinWord_6_0 \ + MS_Word_95 \ + MS_Word_95_Vorlage \ + MS_Word_97 \ + MS_Word_97_Vorlage \ + Rich_Text_Format \ + StarOffice_XML__Writer_ \ + WordPerfect \ + T602Document \ + Text \ + Text__encoded_ \ + writer_MIZI_Hwp_97 \ + writer_StarOffice_XML_Writer_Template \ + writer_pdf_Export\ + writer8\ + writer8_template \ + MS_Word_2003_XML \ + MS_Word_2007_XML \ + MS_Word_2007_XML_Template + +# ----------------------------------------------- +# count = 14 +F4_UI_WRITER = \ + HTML__StarWriter__ui \ + MS_Word_95_Vorlage_ui \ + MS_Word_97_Vorlage_ui \ + StarOffice_XML__Writer__ui \ + Text_ui \ + Text__encoded__ui \ + writer_StarOffice_XML_Writer_Template_ui \ + writer8_ui \ + writer8_template_ui \ + MS_Word_2003_XML_ui \ + MS_Word_2007_XML_ui \ + MS_Word_2007_XML_Template_ui + +# ----------------------------------------------- +# count = 0 +L4_WRITER = + +# ----------------------------------------------- +# count = 0 +C4_WRITER = + +# ----------------------------------------------- +TYPES_4fcfg_writer = $(foreach,i,$(T4_WRITER) types$/$i.xcu ) +FILTERS_4fcfg_writer = $(foreach,i,$(F4_WRITER) filters$/$i.xcu ) +UI_FILTERS_4fcfg_writer = $(foreach,i,$(F4_UI_WRITER) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_writer = $(foreach,i,$(L4_WRITER) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_writer = $(foreach,i,$(C4_WRITER) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_writer = \ + $(TYPES_4fcfg_writer) \ + $(FILTERS_4fcfg_writer) \ + $(UI_FILTERS_4fcfg_writer) \ + $(FRAMELOADERS_4fcfg_writer) \ + $(CONTENTHANDLERS_4fcfg_writer) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_writer) + +ALL_PACKAGES+=writer + diff --git a/filter/source/config/fragments/fcfg_writer_bf.mk b/filter/source/config/fragments/fcfg_writer_bf.mk new file mode 100644 index 000000000000..2e4c5b82b04e --- /dev/null +++ b/filter/source/config/fragments/fcfg_writer_bf.mk @@ -0,0 +1,63 @@ +all_fragments+=writer_bf + +# ----------------------------------------------- +# count = 9 +T4_WRITER_BF = \ + writer_StarWriter_10 \ + writer_StarWriter_20 \ + writer_StarWriter_30 \ + writer_StarWriter_30_VorlageTemplate \ + writer_StarWriter_40 \ + writer_StarWriter_40_VorlageTemplate \ + writer_StarWriter_50 \ + writer_StarWriter_50_VorlageTemplate \ + writer_StarWriter_DOS + +# ----------------------------------------------- +# count = 9 +F4_WRITER_BF = \ + StarWriter_1_0 \ + StarWriter_2_0 \ + StarWriter_3_0 \ + StarWriter_3_0_Vorlage_Template \ + StarWriter_4_0 \ + StarWriter_4_0_Vorlage_Template \ + StarWriter_5_0 \ + StarWriter_5_0_Vorlage_Template \ + StarWriter_DOS + +# ----------------------------------------------- +# count = 3 +F4_UI_WRITER_BF = \ + StarWriter_3_0_Vorlage_Template_ui \ + StarWriter_4_0_Vorlage_Template_ui \ + StarWriter_5_0_Vorlage_Template_ui \ + +# ----------------------------------------------- +# count = 0 +L4_WRITER_BF = + +# ----------------------------------------------- +# count = 0 +C4_WRITER_BF = + +# ----------------------------------------------- +TYPES_4fcfg_writer_bf = $(foreach,i,$(T4_WRITER_BF) types$/$i.xcu ) +FILTERS_4fcfg_writer_bf = $(foreach,i,$(F4_WRITER_BF) filters$/$i.xcu ) +UI_FILTERS_4fcfg_writer_bf = $(foreach,i,$(F4_UI_WRITER_BF) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_writer_bf = $(foreach,i,$(L4_WRITER_BF) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_writer_bf = $(foreach,i,$(C4_WRITER_BF) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_writer_bf = \ + $(TYPES_4fcfg_writer_bf) \ + $(FILTERS_4fcfg_writer_bf) \ + $(UI_FILTERS_4fcfg_writer_bf) \ + $(FRAMELOADERS_4fcfg_writer_bf) \ + $(CONTENTHANDLERS_4fcfg_writer_bf) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_writer_bf) + +ALL_PACKAGES+=writer_bf + diff --git a/filter/source/config/fragments/fcfg_xslt.mk b/filter/source/config/fragments/fcfg_xslt.mk new file mode 100644 index 000000000000..852383aa760e --- /dev/null +++ b/filter/source/config/fragments/fcfg_xslt.mk @@ -0,0 +1,55 @@ +all_fragments+=xslt + +# ----------------------------------------------- +# count = 5 +T4_XSLT = \ + writer_DocBook_File \ + XHTML_File \ + Unified_Office_Format_text \ + Unified_Office_Format_spreadsheet \ + Unified_Office_Format_presentation + +# ----------------------------------------------- +# count = 8 +F4_XSLT = \ + DocBook_File \ + XHTML_Calc_File \ + XHTML_Draw_File \ + XHTML_Impress_File \ + XHTML_Writer_File \ + UOF_text \ + UOF_spreadsheet \ + UOF_presentation + +# ----------------------------------------------- +# count = 0 +F4_UI_XSLT = + +# ----------------------------------------------- +# count = 0 +L4_XSLT = + +# ----------------------------------------------- +# count = 0 +C4_XSLT = + +# ----------------------------------------------- +TYPES_4fcfg_xslt = $(foreach,i,$(T4_XSLT) types$/$i.xcu ) +FILTERS_4fcfg_xslt = $(foreach,i,$(F4_XSLT) filters$/$i.xcu ) +UI_FILTERS_4fcfg_xslt = $(foreach,i,$(F4_UI_XSLT) $(DIR_LOCFRAG)$/filters$/$i.xcu ) +FRAMELOADERS_4fcfg_xslt = $(foreach,i,$(L4_XSLT) frameloaders$/$i.xcu ) +CONTENTHANDLERS_4fcfg_xslt = $(foreach,i,$(C4_XSLT) contenthandlers$/$i.xcu ) + +# ----------------------------------------------- +# needed to get dependencies inside global makefile work! +ALL_4fcfg_xslt = \ + $(TYPES_4fcfg_xslt) \ + $(FILTERS_4fcfg_xslt) \ + $(UI_FILTERS_4fcfg_xslt) \ + $(FRAMELOADERS_4fcfg_xslt) \ + $(CONTENTHANDLERS_4fcfg_xslt) + +ALL_UI_FILTERS+=$(UI_FILTERS_4fcfg_xslt) + +ALL_PACKAGES+=xslt + diff --git a/filter/source/config/fragments/filters/Ami_Pro_1_x_3_1__W4W_.xcu b/filter/source/config/fragments/filters/Ami_Pro_1_x_3_1__W4W_.xcu new file mode 100644 index 000000000000..71c84d3fb7df --- /dev/null +++ b/filter/source/config/fragments/filters/Ami_Pro_1_x_3_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Ami Pro 1.x-3.1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W33_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Ami Pro 1.x-3.1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Ami_Pro_1x_31_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/AportisDoc_Palm_DB.xcu b/filter/source/config/fragments/filters/AportisDoc_Palm_DB.xcu new file mode 100644 index 000000000000..d3d65abc8f8b --- /dev/null +++ b/filter/source/config/fragments/filters/AportisDoc_Palm_DB.xcu @@ -0,0 +1,13 @@ + <node oor:name="AportisDoc Palm DB" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_AportisDoc_PalmDB_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>com.sun.star.documentconversion.XMergeBridge classes/aportisdoc.jar com.sun.star.comp.Writer.XMLImporter com.sun.star.comp.Writer.XMLExporter staroffice/sxw application/x-aportisdoc</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>AportisDoc (Palm)</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/BMP___MS_Windows.xcu b/filter/source/config/fragments/filters/BMP___MS_Windows.xcu new file mode 100644 index 000000000000..911d2841351a --- /dev/null +++ b/filter/source/config/fragments/filters/BMP___MS_Windows.xcu @@ -0,0 +1,13 @@ + <node oor:name="BMP - MS Windows" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">BMP - Windows Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>bmp_MS_Windows</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/CGM___Computer_Graphics_Metafile.xcu b/filter/source/config/fragments/filters/CGM___Computer_Graphics_Metafile.xcu new file mode 100644 index 000000000000..652821c72247 --- /dev/null +++ b/filter/source/config/fragments/filters/CGM___Computer_Graphics_Metafile.xcu @@ -0,0 +1,13 @@ + <node oor:name="CGM - Computer Graphics Metafile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>icg</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">CGM - Computer Graphics Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>impress_CGM_Computer_Graphics_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/CTOS_DEF__W4W_.xcu b/filter/source/config/fragments/filters/CTOS_DEF__W4W_.xcu new file mode 100644 index 000000000000..7eac49b885c4 --- /dev/null +++ b/filter/source/config/fragments/filters/CTOS_DEF__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="CTOS DEF (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W36_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">CTOS DEF</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_CTOS_DEF_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Claris_Works__W4W_.xcu b/filter/source/config/fragments/filters/Claris_Works__W4W_.xcu new file mode 100644 index 000000000000..491b57de36ed --- /dev/null +++ b/filter/source/config/fragments/filters/Claris_Works__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Claris Works (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W57_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Claris Works</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Claris_Works_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DCA_FFT_Final_Form_Text__W4W_.xcu b/filter/source/config/fragments/filters/DCA_FFT_Final_Form_Text__W4W_.xcu new file mode 100644 index 000000000000..510d30fbbbe2 --- /dev/null +++ b/filter/source/config/fragments/filters/DCA_FFT_Final_Form_Text__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DCA/FFT-Final Form Text (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W32_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DCA/FFT-Final Form Text</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DCAFFT_Final_Form_Text_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DCA_Revisable_Form_Text__W4W_.xcu b/filter/source/config/fragments/filters/DCA_Revisable_Form_Text__W4W_.xcu new file mode 100644 index 000000000000..e22a5b7b0a91 --- /dev/null +++ b/filter/source/config/fragments/filters/DCA_Revisable_Form_Text__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DCA Revisable Form Text (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W15_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DCA Revisable Form Text</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DCA_Revisable_Form_Text_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DCA_with_Display_Write_5__W4W_.xcu b/filter/source/config/fragments/filters/DCA_with_Display_Write_5__W4W_.xcu new file mode 100644 index 000000000000..ce3bcb947a27 --- /dev/null +++ b/filter/source/config/fragments/filters/DCA_with_Display_Write_5__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DCA with Display Write 5 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W15_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DCA with Display Write 5</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DCA_with_Display_Write_5_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DEC_DX__W4W_.xcu b/filter/source/config/fragments/filters/DEC_DX__W4W_.xcu new file mode 100644 index 000000000000..26a4f367b525 --- /dev/null +++ b/filter/source/config/fragments/filters/DEC_DX__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DEC DX (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W30_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DEC DX</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DEC_DX_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DEC_WPS_PLUS__W4W_.xcu b/filter/source/config/fragments/filters/DEC_WPS_PLUS__W4W_.xcu new file mode 100644 index 000000000000..b91cd6f8894d --- /dev/null +++ b/filter/source/config/fragments/filters/DEC_WPS_PLUS__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DEC WPS-PLUS (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W45_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DEC WPS-PLUS</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DEC_WPS_PLUS_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DIF.xcu b/filter/source/config/fragments/filters/DIF.xcu new file mode 100644 index 000000000000..c331ba028e13 --- /dev/null +++ b/filter/source/config/fragments/filters/DIF.xcu @@ -0,0 +1,13 @@ + <node oor:name="DIF" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN USESOPTIONS</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Data Interchange Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_DIF</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DXF___AutoCAD_Interchange.xcu b/filter/source/config/fragments/filters/DXF___AutoCAD_Interchange.xcu new file mode 100644 index 000000000000..699622528196 --- /dev/null +++ b/filter/source/config/fragments/filters/DXF___AutoCAD_Interchange.xcu @@ -0,0 +1,13 @@ + <node oor:name="DXF - AutoCAD Interchange" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DXF - AutoCAD Interchange Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>dxf_AutoCAD_Interchange</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DataGeneral_CEO_Write__W4W_.xcu b/filter/source/config/fragments/filters/DataGeneral_CEO_Write__W4W_.xcu new file mode 100644 index 000000000000..dc04e0ea1e97 --- /dev/null +++ b/filter/source/config/fragments/filters/DataGeneral_CEO_Write__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DataGeneral CEO Write (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W104_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DataGeneral CEO Write</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DataGeneral_CEO_Write_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DisplayWrite_2_0_4_x__W4W_.xcu b/filter/source/config/fragments/filters/DisplayWrite_2_0_4_x__W4W_.xcu new file mode 100644 index 000000000000..61e8dd2bcbf1 --- /dev/null +++ b/filter/source/config/fragments/filters/DisplayWrite_2_0_4_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DisplayWrite 2.0-4.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W15_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DisplayWrite 2.0-4.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DisplayWrite_20_4x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DisplayWrite_5_x__W4W_.xcu b/filter/source/config/fragments/filters/DisplayWrite_5_x__W4W_.xcu new file mode 100644 index 000000000000..098c463d111c --- /dev/null +++ b/filter/source/config/fragments/filters/DisplayWrite_5_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="DisplayWrite 5.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W15_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">DisplayWrite 5.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DisplayWrite_5x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/DocBook_File.xcu b/filter/source/config/fragments/filters/DocBook_File.xcu new file mode 100644 index 000000000000..07eb48046acb --- /dev/null +++ b/filter/source/config/fragments/filters/DocBook_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="DocBook File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_DocBook_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Writer.XMLImporter,com.sun.star.comp.Writer.XMLExporter,../share/xslt/docbook/docbooktosoffheadings.xsl,../share/xslt/docbook/sofftodocbookheadings.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"><value>../share/xslt/docbook/DocBookTemplate.stw</value></prop> + <prop oor:name="UIName"> + <value>DocBook</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/EBCDIC__W4W_.xcu b/filter/source/config/fragments/filters/EBCDIC__W4W_.xcu new file mode 100644 index 000000000000..0922f3162273 --- /dev/null +++ b/filter/source/config/fragments/filters/EBCDIC__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="EBCDIC (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W02_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EBCDIC</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_EBCDIC_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/EMF___MS_Windows_Metafile.xcu b/filter/source/config/fragments/filters/EMF___MS_Windows_Metafile.xcu new file mode 100644 index 000000000000..3420e53180e9 --- /dev/null +++ b/filter/source/config/fragments/filters/EMF___MS_Windows_Metafile.xcu @@ -0,0 +1,13 @@ + <node oor:name="EMF - MS Windows Metafile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EMF - Enhanced Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>emf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/EPS___Encapsulated_PostScript.xcu b/filter/source/config/fragments/filters/EPS___Encapsulated_PostScript.xcu new file mode 100644 index 000000000000..d73045dacc2d --- /dev/null +++ b/filter/source/config/fragments/filters/EPS___Encapsulated_PostScript.xcu @@ -0,0 +1,13 @@ + <node oor:name="EPS - Encapsulated PostScript" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>eps_Encapsulated_PostScript</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Enable__W4W_.xcu b/filter/source/config/fragments/filters/Enable__W4W_.xcu new file mode 100644 index 000000000000..7ee528fc3f2f --- /dev/null +++ b/filter/source/config/fragments/filters/Enable__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Enable (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W28_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Enable</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Enable_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Frame_Maker_MIF_3_0__W4W_.xcu b/filter/source/config/fragments/filters/Frame_Maker_MIF_3_0__W4W_.xcu new file mode 100644 index 000000000000..1b49abb99539 --- /dev/null +++ b/filter/source/config/fragments/filters/Frame_Maker_MIF_3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Frame Maker MIF 3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W42_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Frame Maker MIF 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Frame_Maker_MIF_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Frame_Maker_MIF_4_0__W4W_.xcu b/filter/source/config/fragments/filters/Frame_Maker_MIF_4_0__W4W_.xcu new file mode 100644 index 000000000000..ea2a52f3fbdd --- /dev/null +++ b/filter/source/config/fragments/filters/Frame_Maker_MIF_4_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Frame Maker MIF 4.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W42_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Frame Maker MIF 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Frame_Maker_MIF_40_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Frame_Maker_MIF_5_0__W4W_.xcu b/filter/source/config/fragments/filters/Frame_Maker_MIF_5_0__W4W_.xcu new file mode 100644 index 000000000000..fd6da2b5a998 --- /dev/null +++ b/filter/source/config/fragments/filters/Frame_Maker_MIF_5_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Frame Maker MIF 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W42_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Frame Maker MIF 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Frame_Maker_MIF_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Frame_Work_III__W4W_.xcu b/filter/source/config/fragments/filters/Frame_Work_III__W4W_.xcu new file mode 100644 index 000000000000..fec82004b7d4 --- /dev/null +++ b/filter/source/config/fragments/filters/Frame_Work_III__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Frame Work III (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W29_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Frame Work III</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Frame_Work_III_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Frame_Work_IV___W4W_.xcu b/filter/source/config/fragments/filters/Frame_Work_IV___W4W_.xcu new file mode 100644 index 000000000000..b5338bd3be00 --- /dev/null +++ b/filter/source/config/fragments/filters/Frame_Work_IV___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Frame Work IV (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W29_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Frame Work IV</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Frame_Work_IV_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/GIF___Graphics_Interchange.xcu b/filter/source/config/fragments/filters/GIF___Graphics_Interchange.xcu new file mode 100644 index 000000000000..b0db0e0b7298 --- /dev/null +++ b/filter/source/config/fragments/filters/GIF___Graphics_Interchange.xcu @@ -0,0 +1,13 @@ + <node oor:name="GIF - Graphics Interchange" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">GIF - Graphics Interchange Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>gif_Graphics_Interchange</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HP_AdvanceWrite_Plus__W4W_.xcu b/filter/source/config/fragments/filters/HP_AdvanceWrite_Plus__W4W_.xcu new file mode 100644 index 000000000000..eab8b2773e45 --- /dev/null +++ b/filter/source/config/fragments/filters/HP_AdvanceWrite_Plus__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="HP AdvanceWrite Plus (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W22_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">HP AdvanceWrite Plus</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_HP_AdvanceWrite_Plus_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML.xcu b/filter/source/config/fragments/filters/HTML.xcu new file mode 100644 index 000000000000..853b32d112ec --- /dev/null +++ b/filter/source/config/fragments/filters/HTML.xcu @@ -0,0 +1,10 @@ + <node oor:name="HTML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ASYNCHRON PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>HTML</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML_MasterDoc.xcu b/filter/source/config/fragments/filters/HTML_MasterDoc.xcu new file mode 100644 index 000000000000..ff18e7c46068 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML_MasterDoc.xcu @@ -0,0 +1,13 @@ + <node oor:name="HTML_MasterDoc" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>HTML</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">HTML Document (%productname% Master Document)</value> + </prop> + <prop oor:name="Flags"><value>EXPORT INTERNAL NOTINFILEDIALOG NOTINCHOOSER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML_MasterDoc_ui.xcu b/filter/source/config/fragments/filters/HTML_MasterDoc_ui.xcu new file mode 100644 index 000000000000..ce18cbf07c81 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML_MasterDoc_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="HTML_MasterDoc"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document (%productname% Master Document)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML__StarCalc_.xcu b/filter/source/config/fragments/filters/HTML__StarCalc_.xcu new file mode 100644 index 000000000000..01d88c818c09 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML__StarCalc_.xcu @@ -0,0 +1,10 @@ + <node oor:name="HTML (StarCalc)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN USEOPTIONS</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML__StarCalc__ui.xcu b/filter/source/config/fragments/filters/HTML__StarCalc__ui.xcu new file mode 100644 index 000000000000..ec66d294cec1 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML__StarCalc__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="HTML (StarCalc)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document (%productname% Calc)</value> + <value xml:lang="x-translate">HTML Document (%productname% Calc)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML__StarWriter_.xcu b/filter/source/config/fragments/filters/HTML__StarWriter_.xcu new file mode 100644 index 000000000000..285fb7d3e3f5 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML__StarWriter_.xcu @@ -0,0 +1,10 @@ + <node oor:name="HTML (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN ASYNCHRON</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>HTML</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML__StarWriter__ui.xcu b/filter/source/config/fragments/filters/HTML__StarWriter__ui.xcu new file mode 100644 index 000000000000..954ad6185586 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML__StarWriter__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="HTML (StarWriter)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document (%productname% Writer)</value> + <value xml:lang="x-translate">HTML Document (%productname% Writer)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/HTML_ui.xcu b/filter/source/config/fragments/filters/HTML_ui.xcu new file mode 100644 index 000000000000..2549c90d0676 --- /dev/null +++ b/filter/source/config/fragments/filters/HTML_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="HTML"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document</value> + <value xml:lang="x-translate">HTML Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/ICL_Office_Power_6__W4W_.xcu b/filter/source/config/fragments/filters/ICL_Office_Power_6__W4W_.xcu new file mode 100644 index 000000000000..9e4837530df9 --- /dev/null +++ b/filter/source/config/fragments/filters/ICL_Office_Power_6__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="ICL Office Power 6 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W102_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">ICL Office Power 6</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_ICL_Office_Power_6_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/ICL_Office_Power_7__W4W_.xcu b/filter/source/config/fragments/filters/ICL_Office_Power_7__W4W_.xcu new file mode 100644 index 000000000000..2f985fee39b3 --- /dev/null +++ b/filter/source/config/fragments/filters/ICL_Office_Power_7__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="ICL Office Power 7 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W102_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">ICL Office Power 7</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_ICL_Office_Power_7_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Interleaf_5___6__W4W_.xcu b/filter/source/config/fragments/filters/Interleaf_5___6__W4W_.xcu new file mode 100644 index 000000000000..b90e6644783d --- /dev/null +++ b/filter/source/config/fragments/filters/Interleaf_5___6__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Interleaf 5 - 6 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W46_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Interleaf 5 - 6</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Interleaf_5_6_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Interleaf__W4W_.xcu b/filter/source/config/fragments/filters/Interleaf__W4W_.xcu new file mode 100644 index 000000000000..b9f89273e5b0 --- /dev/null +++ b/filter/source/config/fragments/filters/Interleaf__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Interleaf (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W35_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Interleaf</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Interleaf_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/JPG___JPEG.xcu b/filter/source/config/fragments/filters/JPG___JPEG.xcu new file mode 100644 index 000000000000..cefaa6416ec8 --- /dev/null +++ b/filter/source/config/fragments/filters/JPG___JPEG.xcu @@ -0,0 +1,13 @@ + <node oor:name="JPG - JPEG" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>jpg_JPEG</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Legacy_Winstar_onGO__W4W_.xcu b/filter/source/config/fragments/filters/Legacy_Winstar_onGO__W4W_.xcu new file mode 100644 index 000000000000..4e4756f8507f --- /dev/null +++ b/filter/source/config/fragments/filters/Legacy_Winstar_onGO__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Legacy Winstar onGO (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W37_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Legacy Winstar onGO</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Legacy_Winstar_onGO_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Lotus.xcu b/filter/source/config/fragments/filters/Lotus.xcu new file mode 100644 index 000000000000..cff013910f8c --- /dev/null +++ b/filter/source/config/fragments/filters/Lotus.xcu @@ -0,0 +1,13 @@ + <node oor:name="Lotus" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN USESOPTIONS PREFERRED</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Lotus 1-2-3</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_Lotus</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__DOS___StarWriter_.xcu b/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__DOS___StarWriter_.xcu new file mode 100644 index 000000000000..e8c57c254a4c --- /dev/null +++ b/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__DOS___StarWriter_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Lotus 1-2-3 1.0 (DOS) (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>LOTUSD</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Lotus 1-2-3 1.0 DOS (%productname% Writer)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Lotus_1_2_3_10_DOS_StarWriter</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__WIN___StarWriter_.xcu b/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__WIN___StarWriter_.xcu new file mode 100644 index 000000000000..2e1a47f961f8 --- /dev/null +++ b/filter/source/config/fragments/filters/Lotus_1_2_3_1_0__WIN___StarWriter_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Lotus 1-2-3 1.0 (WIN) (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>LOTUSW</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Lotus 1-2-3 1.0 WIN (%productname% Writer)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Lotus_1_2_3_10_WIN_StarWriter</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Lotus_Manuscript__W4W_.xcu b/filter/source/config/fragments/filters/Lotus_Manuscript__W4W_.xcu new file mode 100644 index 000000000000..e2201269e6b6 --- /dev/null +++ b/filter/source/config/fragments/filters/Lotus_Manuscript__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Lotus Manuscript (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W24_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Lotus Manuscript</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Lotus_Manuscript_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MASS_11_Rel__8_0_8_3__W4W_.xcu b/filter/source/config/fragments/filters/MASS_11_Rel__8_0_8_3__W4W_.xcu new file mode 100644 index 000000000000..d7d490e45780 --- /dev/null +++ b/filter/source/config/fragments/filters/MASS_11_Rel__8_0_8_3__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MASS 11 Rel. 8.0-8.3 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W31_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MASS 11 Rel. 8.0-8.3</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MASS_11_Rel_80_83_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MASS_11_Rel__8_5_9_0__W4W_.xcu b/filter/source/config/fragments/filters/MASS_11_Rel__8_5_9_0__W4W_.xcu new file mode 100644 index 000000000000..ba1924b3e4cc --- /dev/null +++ b/filter/source/config/fragments/filters/MASS_11_Rel__8_5_9_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MASS 11 Rel. 8.5-9.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W31_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MASS 11 Rel. 8.5-9.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MASS_11_Rel_85_90_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MET___OS_2_Metafile.xcu b/filter/source/config/fragments/filters/MET___OS_2_Metafile.xcu new file mode 100644 index 000000000000..f37c131e7837 --- /dev/null +++ b/filter/source/config/fragments/filters/MET___OS_2_Metafile.xcu @@ -0,0 +1,13 @@ + <node oor:name="MET - OS/2 Metafile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MET - OS/2 Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>met_OS2_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_2003_XML.xcu b/filter/source/config/fragments/filters/MS_Excel_2003_XML.xcu new file mode 100644 index 000000000000..d0d2b13e5584 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_2003_XML.xcu @@ -0,0 +1,10 @@ + <node oor:name="MS Excel 2003 XML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Calc.XMLOasisImporter,com.sun.star.comp.Calc.XMLOasisExporter,../share/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl,../share/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_2003_XML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_2003_XML_ui.xcu b/filter/source/config/fragments/filters/MS_Excel_2003_XML_ui.xcu new file mode 100644 index 000000000000..b6c743fc1b84 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_2003_XML_ui.xcu @@ -0,0 +1,12 @@ + <node oor:name="MS Excel 2003 XML"> + <prop oor:name="UIName"> + <value xml:lang="el">Microsoft Excel 2003 XML</value> + <value xml:lang="en-US">Microsoft Excel 2003 XML</value> + <value xml:lang="hu">Microsoft Excel 2003 XML</value> + <value xml:lang="cs">Microsoft Excel 2003 XML</value> + <value xml:lang="sk">Microsoft Excel 2003 XML</value> + <value xml:lang="sl">Microsoft Excel 2003 XML</value> + <value xml:lang="nl">Microsoft Excel 2003 XML</value> + <value xml:lang="da">Microsoft Excel 2003 XML</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_4_0.xcu b/filter/source/config/fragments/filters/MS_Excel_4_0.xcu new file mode 100644 index 000000000000..f0c5bd97fd16 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_4_0.xcu @@ -0,0 +1,13 @@ +<node oor:name="MS Excel 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..5366f1282ece --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 4.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN TEMPLATE TEMPLATEPATH</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_40_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..c68e1e33ac8a --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Excel 4.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 4.0 Template</value> + <value xml:lang="x-translate">Microsoft Excel 4.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_4_0__StarWriter_.xcu b/filter/source/config/fragments/filters/MS_Excel_4_0__StarWriter_.xcu new file mode 100644 index 000000000000..611e4a30898b --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_4_0__StarWriter_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Excel 4.0 (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>EXCEL</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 4.0 (%productname% Writer)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_5_0_95.xcu b/filter/source/config/fragments/filters/MS_Excel_5_0_95.xcu new file mode 100644 index 000000000000..21c8a0c2d67f --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_5_0_95.xcu @@ -0,0 +1,13 @@ +<node oor:name="MS Excel 5.0/95" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_5095</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template.xcu b/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template.xcu new file mode 100644 index 000000000000..1fef8ef27461 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 5.0/95 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN TEMPLATE TEMPLATEPATH</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_5095_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..d50a4aa4d941 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Excel 5.0/95 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 5.0 Template</value> + <value xml:lang="x-translate">Microsoft Excel 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_5_0__StarWriter_.xcu b/filter/source/config/fragments/filters/MS_Excel_5_0__StarWriter_.xcu new file mode 100644 index 000000000000..e1fe503830cf --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_5_0__StarWriter_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Excel 5.0 (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CEXCEL</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 5.0 (%productname% Writer)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_5095</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_95.xcu b/filter/source/config/fragments/filters/MS_Excel_95.xcu new file mode 100644 index 000000000000..1fa61477f073 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_95.xcu @@ -0,0 +1,13 @@ +<node oor:name="MS Excel 95" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 95</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_95</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template.xcu b/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template.xcu new file mode 100644 index 000000000000..b14d6619be0d --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 95 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN TEMPLATE TEMPLATEPATH</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_95_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..eb44244a400f --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Excel 95 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 95 Template</value> + <value xml:lang="x-translate">Microsoft Excel 95 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_95__StarWriter_.xcu b/filter/source/config/fragments/filters/MS_Excel_95__StarWriter_.xcu new file mode 100644 index 000000000000..35c56ccb0d93 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_95__StarWriter_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Excel 95 (StarWriter)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CEXCEL</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 95 (%productname% Writer)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_95</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Excel_97.xcu b/filter/source/config/fragments/filters/MS_Excel_97.xcu new file mode 100644 index 000000000000..1baa4341d90d --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_97.xcu @@ -0,0 +1,13 @@ +<node oor:name="MS Excel 97" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Excel 97/2000/XP</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_97</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template.xcu b/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template.xcu new file mode 100644 index 000000000000..42c997f967f9 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 97 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN TEMPLATE TEMPLATEPATH ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_MS_Excel_97_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..3916c4e68b59 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Excel 97 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 97/2000/XP Template</value> + <value xml:lang="x-translate">Microsoft Excel 97/2000/XP Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_MacWord_3_0__W4W_.xcu b/filter/source/config/fragments/filters/MS_MacWord_3_0__W4W_.xcu new file mode 100644 index 000000000000..679289dd571b --- /dev/null +++ b/filter/source/config/fragments/filters/MS_MacWord_3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS MacWord 3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W54_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft MacWord 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_MacWord_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_MacWord_4_0__W4W_.xcu b/filter/source/config/fragments/filters/MS_MacWord_4_0__W4W_.xcu new file mode 100644 index 000000000000..ec8117695038 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_MacWord_4_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS MacWord 4.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W54_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft MacWord 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_MacWord_40_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_MacWord_5_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_MacWord_5_x__W4W_.xcu new file mode 100644 index 000000000000..bcef70090790 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_MacWord_5_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS MacWord 5.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W54_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft MacWord 5.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_MacWord_5x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_PowerPoint_97.xcu b/filter/source/config/fragments/filters/MS_PowerPoint_97.xcu new file mode 100644 index 000000000000..7c61f7c14084 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_PowerPoint_97.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS PowerPoint 97" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>sdfilt</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft PowerPoint 97/2000/XP</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>impress_MS_PowerPoint_97</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage.xcu b/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage.xcu new file mode 100644 index 000000000000..505084d4d39f --- /dev/null +++ b/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="MS PowerPoint 97 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH ALIEN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>sdfilt</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>impress_MS_PowerPoint_97_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage_ui.xcu b/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage_ui.xcu new file mode 100644 index 000000000000..c9b728448f09 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS PowerPoint 97 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft PowerPoint 97/2000/XP Template</value> + <value xml:lang="x-translate">Microsoft PowerPoint 97/2000/XP Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_WinWord_1_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_WinWord_1_x__W4W_.xcu new file mode 100644 index 000000000000..65a88b830d04 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_WinWord_1_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS WinWord 1.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W44_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft WinWord 1.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_WinWord_1x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_WinWord_2_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_WinWord_2_x__W4W_.xcu new file mode 100644 index 000000000000..2f6381d80b54 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_WinWord_2_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS WinWord 2.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W44_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft WinWord 2.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_WinWord_2x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_WinWord_5.xcu b/filter/source/config/fragments/filters/MS_WinWord_5.xcu new file mode 100644 index 000000000000..4f0c51b95fd2 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_WinWord_5.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS WinWord 5" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>WW6</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft WinWord 5</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_WinWord_5</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_WinWord_6_0.xcu b/filter/source/config/fragments/filters/MS_WinWord_6_0.xcu new file mode 100644 index 000000000000..6c0b17451f0a --- /dev/null +++ b/filter/source/config/fragments/filters/MS_WinWord_6_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS WinWord 6.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CWW6</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 6.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_WinWord_60</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2003_XML.xcu b/filter/source/config/fragments/filters/MS_Word_2003_XML.xcu new file mode 100644 index 000000000000..c953598dd67d --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2003_XML.xcu @@ -0,0 +1,10 @@ + <node oor:name="MS Word 2003 XML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Writer.XMLOasisImporter,com.sun.star.comp.Writer.XMLOasisExporter,../share/xslt/import/wordml/wordml2ooo.xsl,../share/xslt/export/wordml/ooo2wordml.xsl</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_2003_XML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2003_XML_ui.xcu b/filter/source/config/fragments/filters/MS_Word_2003_XML_ui.xcu new file mode 100644 index 000000000000..1a6847dfbdb9 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2003_XML_ui.xcu @@ -0,0 +1,12 @@ + <node oor:name="MS Word 2003 XML"> + <prop oor:name="UIName"> + <value xml:lang="el">Microsoft Word 2003 XML</value> + <value xml:lang="en-US">Microsoft Word 2003 XML</value> + <value xml:lang="hu">Microsoft Word 2003 XML</value> + <value xml:lang="cs">Microsoft Word 2003 XML</value> + <value xml:lang="sk">Microsoft Word 2003 XML</value> + <value xml:lang="sl">Microsoft Word 2003 XML</value> + <value xml:lang="nl">Microsoft Word 2003 XML</value> + <value xml:lang="da">Microsoft Word 2003 XML</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu b/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu new file mode 100644 index 000000000000..d8a37406fe93 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 2007 XML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop> + <prop oor:name="UserData"><value>OXML</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 2007 XML</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_2007</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu new file mode 100644 index 000000000000..987e57c35f0b --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 2007 XML Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER TEMPLATE TEMPLATEPATH</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop> + <prop oor:name="UserData"><value>OXML</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 2007 XML Template</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_2007_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML_Template_ui.xcu b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template_ui.xcu new file mode 100644 index 000000000000..818ddbcf00da --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Word 2007 XML Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Word 2007 XML Template</value> + <value xml:lang="de">Microsoft Word 2007 XML Vorlage</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML_ui.xcu b/filter/source/config/fragments/filters/MS_Word_2007_XML_ui.xcu new file mode 100644 index 000000000000..a4a293561e31 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_2007_XML_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Word 2007 XML"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Word 2007 XML</value> + <value xml:lang="de">Microsoft Word 2007 XML</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_3_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_Word_3_x__W4W_.xcu new file mode 100644 index 000000000000..b244802b3d3f --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_3_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 3.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W05_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 3.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_3x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_4_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_Word_4_x__W4W_.xcu new file mode 100644 index 000000000000..89dc19b3b9d5 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_4_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 4.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W05_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 4.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_4x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_5_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_Word_5_x__W4W_.xcu new file mode 100644 index 000000000000..5faa71cfdea2 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_5_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 5.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W05_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 5.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_5x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_6_x__W4W_.xcu b/filter/source/config/fragments/filters/MS_Word_6_x__W4W_.xcu new file mode 100644 index 000000000000..2e495455758d --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_6_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 6.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W05_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 6.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_6x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_95.xcu b/filter/source/config/fragments/filters/MS_Word_95.xcu new file mode 100644 index 000000000000..40af005de713 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_95.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 95" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CWW6</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 95</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_95</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_95_Vorlage.xcu b/filter/source/config/fragments/filters/MS_Word_95_Vorlage.xcu new file mode 100644 index 000000000000..29b93c2eb79f --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_95_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="MS Word 95 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT TEMPLATE TEMPLATEPATH ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CWW6</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_95_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_95_Vorlage_ui.xcu b/filter/source/config/fragments/filters/MS_Word_95_Vorlage_ui.xcu new file mode 100644 index 000000000000..952bb13bb494 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_95_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Word 95 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Word 95 Template</value> + <value xml:lang="x-translate">Microsoft Word 95 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_97.xcu b/filter/source/config/fragments/filters/MS_Word_97.xcu new file mode 100644 index 000000000000..c02a895b82f8 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_97.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Word 97" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CWW8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Word 97/2000/XP</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_97</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_97_Vorlage.xcu b/filter/source/config/fragments/filters/MS_Word_97_Vorlage.xcu new file mode 100644 index 000000000000..35d694a4832d --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_97_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="MS Word 97 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT TEMPLATE TEMPLATEPATH ALIEN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CWW8</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Word_97_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Word_97_Vorlage_ui.xcu b/filter/source/config/fragments/filters/MS_Word_97_Vorlage_ui.xcu new file mode 100644 index 000000000000..f0df07a762ea --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Word_97_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="MS Word 97 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Word 97/2000/XP Template</value> + <value xml:lang="x-translate">Microsoft Word 97/2000/XP Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Works_2_0_DOS__W4W_.xcu b/filter/source/config/fragments/filters/MS_Works_2_0_DOS__W4W_.xcu new file mode 100644 index 000000000000..da458068e747 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Works_2_0_DOS__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Works 2.0 DOS (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W39_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Works 2.0 DOS</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Works_20_DOS_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Works_3_0_Win__W4W_.xcu b/filter/source/config/fragments/filters/MS_Works_3_0_Win__W4W_.xcu new file mode 100644 index 000000000000..a9a9b9814dca --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Works_3_0_Win__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Works 3.0 Win (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W39_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Works 3.0 Win</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Works_30_Win_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MS_Works_4_0_Mac__W4W_.xcu b/filter/source/config/fragments/filters/MS_Works_4_0_Mac__W4W_.xcu new file mode 100644 index 000000000000..8a696f7bafe6 --- /dev/null +++ b/filter/source/config/fragments/filters/MS_Works_4_0_Mac__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MS Works 4.0 Mac (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W58_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Microsoft Works 4.0 Mac</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MS_Works_40_Mac_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Mac_Write_4_x_5_0__W4W_.xcu b/filter/source/config/fragments/filters/Mac_Write_4_x_5_0__W4W_.xcu new file mode 100644 index 000000000000..249220b08db5 --- /dev/null +++ b/filter/source/config/fragments/filters/Mac_Write_4_x_5_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Mac Write 4.x 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W51_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Mac Write 4.x 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Mac_Write_4x_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Mac_Write_II__W4W_.xcu b/filter/source/config/fragments/filters/Mac_Write_II__W4W_.xcu new file mode 100644 index 000000000000..68f8ffb6d5f3 --- /dev/null +++ b/filter/source/config/fragments/filters/Mac_Write_II__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Mac Write II (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W52_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Mac Write II</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Mac_Write_II_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Mac_Write_Pro__W4W_.xcu b/filter/source/config/fragments/filters/Mac_Write_Pro__W4W_.xcu new file mode 100644 index 000000000000..9b6431e04eab --- /dev/null +++ b/filter/source/config/fragments/filters/Mac_Write_Pro__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Mac Write Pro (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W56_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Mac Write Pro</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Mac_Write_Pro_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MathML_XML__Math_.xcu b/filter/source/config/fragments/filters/MathML_XML__Math_.xcu new file mode 100644 index 000000000000..b6ab09ac89cd --- /dev/null +++ b/filter/source/config/fragments/filters/MathML_XML__Math_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MathML XML (Math)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MathML 1.01</value> + </prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>math_MathML_XML_Math</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MathType_3_x.xcu b/filter/source/config/fragments/filters/MathType_3_x.xcu new file mode 100644 index 000000000000..93637ee583b2 --- /dev/null +++ b/filter/source/config/fragments/filters/MathType_3_x.xcu @@ -0,0 +1,13 @@ + <node oor:name="MathType 3.x" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN NOTINFILEDIALOG NOTINCHOOSER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MathType3.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>math_MathType_3x</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MiniCalc__Palm_.xcu b/filter/source/config/fragments/filters/MiniCalc__Palm_.xcu new file mode 100644 index 000000000000..234d187c2b08 --- /dev/null +++ b/filter/source/config/fragments/filters/MiniCalc__Palm_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MiniCalc (Palm)" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>1</value></prop> + <prop oor:name="Type"><value>calc_MiniCalc_PalmDB_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>com.sun.star.documentconversion.XMergeBridge classes/minicalc.jar com.sun.star.comp.Calc.XMLImporter com.sun.star.comp.Calc.XMLExporter staroffice/sxc application/x-minicalc</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>MiniCalc (Palm)</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MultiMate_3_3__W4W_.xcu b/filter/source/config/fragments/filters/MultiMate_3_3__W4W_.xcu new file mode 100644 index 000000000000..9b98327b4af1 --- /dev/null +++ b/filter/source/config/fragments/filters/MultiMate_3_3__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MultiMate 3.3 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W10_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MultiMate 3.3</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MultiMate_33_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MultiMate_4__W4W_.xcu b/filter/source/config/fragments/filters/MultiMate_4__W4W_.xcu new file mode 100644 index 000000000000..9098ed8f3305 --- /dev/null +++ b/filter/source/config/fragments/filters/MultiMate_4__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MultiMate 4 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W10_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MultiMate 4</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MultiMate_4_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MultiMate_Adv__3_6__W4W_.xcu b/filter/source/config/fragments/filters/MultiMate_Adv__3_6__W4W_.xcu new file mode 100644 index 000000000000..4e9dc9e84ba4 --- /dev/null +++ b/filter/source/config/fragments/filters/MultiMate_Adv__3_6__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MultiMate Adv. 3.6 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W10_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MultiMate Adv. 3.6</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MultiMate_Adv_36_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/MultiMate_Adv__II_3_7__W4W_.xcu b/filter/source/config/fragments/filters/MultiMate_Adv__II_3_7__W4W_.xcu new file mode 100644 index 000000000000..26939248d58b --- /dev/null +++ b/filter/source/config/fragments/filters/MultiMate_Adv__II_3_7__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="MultiMate Adv. II 3.7 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W10_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MultiMate Adv. II 3.7</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MultiMate_Adv_II_37_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/NAVY_DIF__W4W_.xcu b/filter/source/config/fragments/filters/NAVY_DIF__W4W_.xcu new file mode 100644 index 000000000000..dcc5ecc36c39 --- /dev/null +++ b/filter/source/config/fragments/filters/NAVY_DIF__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="NAVY DIF (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W18_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">NAVY DIF</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_NAVY_DIF_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/OfficeWriter_4_0__W4W_.xcu b/filter/source/config/fragments/filters/OfficeWriter_4_0__W4W_.xcu new file mode 100644 index 000000000000..afc5b8a83586 --- /dev/null +++ b/filter/source/config/fragments/filters/OfficeWriter_4_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="OfficeWriter 4.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W16_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">OfficeWriter 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_OfficeWriter_40_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/OfficeWriter_5_0__W4W_.xcu b/filter/source/config/fragments/filters/OfficeWriter_5_0__W4W_.xcu new file mode 100644 index 000000000000..299101bd5601 --- /dev/null +++ b/filter/source/config/fragments/filters/OfficeWriter_5_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="OfficeWriter 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W16_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">OfficeWriter 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_OfficeWriter_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/OfficeWriter_6_x__W4W_.xcu b/filter/source/config/fragments/filters/OfficeWriter_6_x__W4W_.xcu new file mode 100644 index 000000000000..73baa867021f --- /dev/null +++ b/filter/source/config/fragments/filters/OfficeWriter_6_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="OfficeWriter 6.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W16_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">OfficeWriter 6.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_OfficeWriter_6x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PBM___Portable_Bitmap.xcu b/filter/source/config/fragments/filters/PBM___Portable_Bitmap.xcu new file mode 100644 index 000000000000..b5d30b17fd5a --- /dev/null +++ b/filter/source/config/fragments/filters/PBM___Portable_Bitmap.xcu @@ -0,0 +1,13 @@ + <node oor:name="PBM - Portable Bitmap" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PBM - Portable Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pbm_Portable_Bitmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PCT___Mac_Pict.xcu b/filter/source/config/fragments/filters/PCT___Mac_Pict.xcu new file mode 100644 index 000000000000..34816883e8d5 --- /dev/null +++ b/filter/source/config/fragments/filters/PCT___Mac_Pict.xcu @@ -0,0 +1,13 @@ + <node oor:name="PCT - Mac Pict" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCT - Mac Pict</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pct_Mac_Pict</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PCX___Zsoft_Paintbrush.xcu b/filter/source/config/fragments/filters/PCX___Zsoft_Paintbrush.xcu new file mode 100644 index 000000000000..ad56e44c0314 --- /dev/null +++ b/filter/source/config/fragments/filters/PCX___Zsoft_Paintbrush.xcu @@ -0,0 +1,13 @@ + <node oor:name="PCX - Zsoft Paintbrush" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCX - Zsoft Paintbrush</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pcx_Zsoft_Paintbrush</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PFS_First_Choice_1_0__W4W_.xcu b/filter/source/config/fragments/filters/PFS_First_Choice_1_0__W4W_.xcu new file mode 100644 index 000000000000..fb20708bd933 --- /dev/null +++ b/filter/source/config/fragments/filters/PFS_First_Choice_1_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="PFS First Choice 1.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS First Choice 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_PFS_First_Choice_10_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PFS_First_Choice_2_0__W4W_.xcu b/filter/source/config/fragments/filters/PFS_First_Choice_2_0__W4W_.xcu new file mode 100644 index 000000000000..1f7002fa4bdf --- /dev/null +++ b/filter/source/config/fragments/filters/PFS_First_Choice_2_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="PFS First Choice 2.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS First Choice 2.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_PFS_First_Choice_20_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PFS_First_Choice_3_0__W4W_.xcu b/filter/source/config/fragments/filters/PFS_First_Choice_3_0__W4W_.xcu new file mode 100644 index 000000000000..9c3be7e436f2 --- /dev/null +++ b/filter/source/config/fragments/filters/PFS_First_Choice_3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="PFS First Choice 3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_5</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS First Choice 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_PFS_First_Choice_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PFS_Write__W4W_.xcu b/filter/source/config/fragments/filters/PFS_Write__W4W_.xcu new file mode 100644 index 000000000000..4abd5c90dba8 --- /dev/null +++ b/filter/source/config/fragments/filters/PFS_Write__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="PFS Write (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS Write</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_PFS_Write_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PGM___Portable_Graymap.xcu b/filter/source/config/fragments/filters/PGM___Portable_Graymap.xcu new file mode 100644 index 000000000000..e79262752cf5 --- /dev/null +++ b/filter/source/config/fragments/filters/PGM___Portable_Graymap.xcu @@ -0,0 +1,13 @@ + <node oor:name="PGM - Portable Graymap" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PGM - Portable Graymap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pgm_Portable_Graymap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PNG___Portable_Network_Graphic.xcu b/filter/source/config/fragments/filters/PNG___Portable_Network_Graphic.xcu new file mode 100644 index 000000000000..d96ce0f9fbd4 --- /dev/null +++ b/filter/source/config/fragments/filters/PNG___Portable_Network_Graphic.xcu @@ -0,0 +1,13 @@ + <node oor:name="PNG - Portable Network Graphic" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PPM___Portable_Pixelmap.xcu b/filter/source/config/fragments/filters/PPM___Portable_Pixelmap.xcu new file mode 100644 index 000000000000..fec669f4ee5b --- /dev/null +++ b/filter/source/config/fragments/filters/PPM___Portable_Pixelmap.xcu @@ -0,0 +1,13 @@ + <node oor:name="PPM - Portable Pixelmap" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ppm_Portable_Pixelmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PSD___Adobe_Photoshop.xcu b/filter/source/config/fragments/filters/PSD___Adobe_Photoshop.xcu new file mode 100644 index 000000000000..95683a6de6b5 --- /dev/null +++ b/filter/source/config/fragments/filters/PSD___Adobe_Photoshop.xcu @@ -0,0 +1,13 @@ + <node oor:name="PSD - Adobe Photoshop" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PSD - Adobe Photoshop</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>psd_Adobe_Photoshop</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Peach_Text__W4W_.xcu b/filter/source/config/fragments/filters/Peach_Text__W4W_.xcu new file mode 100644 index 000000000000..5bc2f3c60dda --- /dev/null +++ b/filter/source/config/fragments/filters/Peach_Text__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Peach Text (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W27_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Peach Text</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Peach_Text_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/PocketWord_File.xcu b/filter/source/config/fragments/filters/PocketWord_File.xcu new file mode 100644 index 000000000000..87d4cf74a40a --- /dev/null +++ b/filter/source/config/fragments/filters/PocketWord_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="PocketWord File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_PocketWord_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>com.sun.star.documentconversion.XMergeBridge classes/pocketword.jar com.sun.star.comp.Writer.XMLImporter com.sun.star.comp.Writer.XMLExporter staroffice/sxw application/x-pocket-word</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>Pocket Word</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Pocket_Excel.xcu b/filter/source/config/fragments/filters/Pocket_Excel.xcu new file mode 100644 index 000000000000..2fe86184a1cc --- /dev/null +++ b/filter/source/config/fragments/filters/Pocket_Excel.xcu @@ -0,0 +1,13 @@ + <node oor:name="Pocket Excel" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>1</value></prop> + <prop oor:name="Type"><value>calc_Pocket_Excel_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>com.sun.star.documentconversion.XMergeBridge classes/pexcel.jar com.sun.star.comp.Calc.XMLImporter com.sun.star.comp.Calc.XMLExporter staroffice/sxc application/x-pocket-excel</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>Pocket Excel</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Professional_Write_1_0__W4W_.xcu b/filter/source/config/fragments/filters/Professional_Write_1_0__W4W_.xcu new file mode 100644 index 000000000000..cd52a17c2873 --- /dev/null +++ b/filter/source/config/fragments/filters/Professional_Write_1_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Professional Write 1.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS Professional Write 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Professional_Write_10_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Professional_Write_2_x__W4W_.xcu b/filter/source/config/fragments/filters/Professional_Write_2_x__W4W_.xcu new file mode 100644 index 000000000000..5ba7499a79e8 --- /dev/null +++ b/filter/source/config/fragments/filters/Professional_Write_2_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Professional Write 2.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W08_4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS Professional Write 2.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Professional_Write_2x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Professional_Write_Plus__W4W_.xcu b/filter/source/config/fragments/filters/Professional_Write_Plus__W4W_.xcu new file mode 100644 index 000000000000..5852f02c4083 --- /dev/null +++ b/filter/source/config/fragments/filters/Professional_Write_Plus__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Professional Write Plus (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W33_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PFS Professional Write Plus</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Professional_Write_Plus_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/QPro.xcu b/filter/source/config/fragments/filters/QPro.xcu new file mode 100644 index 000000000000..950dcaef2758 --- /dev/null +++ b/filter/source/config/fragments/filters/QPro.xcu @@ -0,0 +1,13 @@ + <node oor:name="Quattro Pro 6.0" oor:op="replace" oor:finalized="true" oor:mandatory="true"> + <prop oor:name="Flags"><value>IMPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">Quattro Pro 6.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_QPro</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Q_A_Write_1_0_3_0__W4W_.xcu b/filter/source/config/fragments/filters/Q_A_Write_1_0_3_0__W4W_.xcu new file mode 100644 index 000000000000..124e03b80b4f --- /dev/null +++ b/filter/source/config/fragments/filters/Q_A_Write_1_0_3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Q&A Write 1.0-3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W23_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Q&A Write 1.0-3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_QA_Write_10_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Q_A_Write_4_0__W4W_.xcu b/filter/source/config/fragments/filters/Q_A_Write_4_0__W4W_.xcu new file mode 100644 index 000000000000..4ad2dd226038 --- /dev/null +++ b/filter/source/config/fragments/filters/Q_A_Write_4_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Q&A Write 4.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W23_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Q&A Write 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_QA_Write_40_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/RAS___Sun_Rasterfile.xcu b/filter/source/config/fragments/filters/RAS___Sun_Rasterfile.xcu new file mode 100644 index 000000000000..9b66385d1f82 --- /dev/null +++ b/filter/source/config/fragments/filters/RAS___Sun_Rasterfile.xcu @@ -0,0 +1,13 @@ + <node oor:name="RAS - Sun Rasterfile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">RAS - Sun Raster Image</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ras_Sun_Rasterfile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Rapid_File_1_0__W4W_.xcu b/filter/source/config/fragments/filters/Rapid_File_1_0__W4W_.xcu new file mode 100644 index 000000000000..ed2da0acef84 --- /dev/null +++ b/filter/source/config/fragments/filters/Rapid_File_1_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Rapid File 1.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W25_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Rapid File 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Rapid_File_10_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Rapid_File_1_2__W4W_.xcu b/filter/source/config/fragments/filters/Rapid_File_1_2__W4W_.xcu new file mode 100644 index 000000000000..86bf7a3857bf --- /dev/null +++ b/filter/source/config/fragments/filters/Rapid_File_1_2__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Rapid File 1.2 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W25_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Rapid File 1.2</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Rapid_File_12_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Rich_Text_Format.xcu b/filter/source/config/fragments/filters/Rich_Text_Format.xcu new file mode 100644 index 000000000000..dc8b07e45536 --- /dev/null +++ b/filter/source/config/fragments/filters/Rich_Text_Format.xcu @@ -0,0 +1,13 @@ + <node oor:name="Rich Text Format" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>RTF</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Rich Text Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Rich_Text_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Rich_Text_Format__StarCalc_.xcu b/filter/source/config/fragments/filters/Rich_Text_Format__StarCalc_.xcu new file mode 100644 index 000000000000..48af73df89ff --- /dev/null +++ b/filter/source/config/fragments/filters/Rich_Text_Format__StarCalc_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Rich Text Format (StarCalc)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Rich Text Format (%productname% Calc)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Rich_Text_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/SGF___StarOffice_Writer_SGF.xcu b/filter/source/config/fragments/filters/SGF___StarOffice_Writer_SGF.xcu new file mode 100644 index 000000000000..41acbb993b0c --- /dev/null +++ b/filter/source/config/fragments/filters/SGF___StarOffice_Writer_SGF.xcu @@ -0,0 +1,13 @@ + <node oor:name="SGF - StarOffice Writer SGF" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SGF - StarWriter Graphics Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>sgf_StarOffice_Writer_SGF</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/SGV___StarDraw_2_0.xcu b/filter/source/config/fragments/filters/SGV___StarDraw_2_0.xcu new file mode 100644 index 000000000000..94548119adcf --- /dev/null +++ b/filter/source/config/fragments/filters/SGV___StarDraw_2_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="SGV - StarDraw 2.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SGV - StarDraw 2.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>sgv_StarDraw_20</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/SVM___StarView_Metafile.xcu b/filter/source/config/fragments/filters/SVM___StarView_Metafile.xcu new file mode 100644 index 000000000000..bb15deff047f --- /dev/null +++ b/filter/source/config/fragments/filters/SVM___StarView_Metafile.xcu @@ -0,0 +1,13 @@ + <node oor:name="SVM - StarView Metafile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SVM - StarView Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>svm_StarView_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/SYLK.xcu b/filter/source/config/fragments/filters/SYLK.xcu new file mode 100644 index 000000000000..e46fcbdbe3af --- /dev/null +++ b/filter/source/config/fragments/filters/SYLK.xcu @@ -0,0 +1,13 @@ + <node oor:name="SYLK" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SYLK</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_SYLK</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Samna_Word_IV_IV_Plus__W4W_.xcu b/filter/source/config/fragments/filters/Samna_Word_IV_IV_Plus__W4W_.xcu new file mode 100644 index 000000000000..0c939ce76dc7 --- /dev/null +++ b/filter/source/config/fragments/filters/Samna_Word_IV_IV_Plus__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Samna Word IV-IV Plus (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W22_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Samna Word IV-IV Plus</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Samna_Word_IV_IV_Plus_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_1_0.xcu b/filter/source/config/fragments/filters/StarCalc_1_0.xcu new file mode 100644 index 000000000000..ba0603cc13dc --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_1_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarCalc 1.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"/> + <prop oor:name="FilterService"/> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarCalc 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_10</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_3_0.xcu b/filter/source/config/fragments/filters/StarCalc_3_0.xcu new file mode 100644 index 000000000000..fc96b7d6cd99 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_3_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarCalc 3.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarCalc 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..1dce482b0fdf --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarCalc 3.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_30_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..e4ce9330a1c5 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarCalc 3.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarCalc 3.0 Template</value> + <value xml:lang="x-translate">StarCalc 3.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_4_0.xcu b/filter/source/config/fragments/filters/StarCalc_4_0.xcu new file mode 100644 index 000000000000..c12d34b3ee8e --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_4_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarCalc 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarCalc 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..b27b0cd4fcc1 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarCalc 4.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_40_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..9de89570e351 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarCalc 4.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarCalc 4.0 Template</value> + <value xml:lang="x-translate">StarCalc 4.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_5_0.xcu b/filter/source/config/fragments/filters/StarCalc_5_0.xcu new file mode 100644 index 000000000000..7378d4d7a405 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarCalc 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarCalc 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..edefd738acfa --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarCalc 5.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>calc_StarCalc_50_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..62b2001c0700 --- /dev/null +++ b/filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarCalc 5.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarCalc 5.0 Template</value> + <value xml:lang="x-translate">StarCalc 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarChart_3_0.xcu b/filter/source/config/fragments/filters/StarChart_3_0.xcu new file mode 100644 index 000000000000..ca7c4ab13867 --- /dev/null +++ b/filter/source/config/fragments/filters/StarChart_3_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarChart 3.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER SILENTEXPORT</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarChart 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>chart_StarChart_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.chart2.ChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarChart_4_0.xcu b/filter/source/config/fragments/filters/StarChart_4_0.xcu new file mode 100644 index 000000000000..d6b909ed2537 --- /dev/null +++ b/filter/source/config/fragments/filters/StarChart_4_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarChart 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER SILENTEXPORT</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarChart 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>chart_StarChart_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.chart2.ChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarChart_5_0.xcu b/filter/source/config/fragments/filters/StarChart_5_0.xcu new file mode 100644 index 000000000000..8f095aef9c79 --- /dev/null +++ b/filter/source/config/fragments/filters/StarChart_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarChart 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER SILENTEXPORT</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarChart 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>chart_StarChart_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.chart2.ChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0.xcu b/filter/source/config/fragments/filters/StarDraw_3_0.xcu new file mode 100644 index 000000000000..e4c22be3a3ee --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarDraw 3.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarDraw 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage.xcu b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage.xcu new file mode 100644 index 000000000000..ab1dd6f0ad23 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarDraw 3.0 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_30_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress_.xcu b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress_.xcu new file mode 100644 index 000000000000..f255fb901937 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarDraw 3.0 Vorlage (StarImpress)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_30_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress__ui.xcu b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress__ui.xcu new file mode 100644 index 000000000000..542736c1168e --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarDraw 3.0 Vorlage (StarImpress)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarDraw 3.0 Template (%productname% Impress)</value> + <value xml:lang="x-translate">StarDraw 3.0 Template (%productname% Impress)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage_ui.xcu b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage_ui.xcu new file mode 100644 index 000000000000..61f15235792b --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarDraw 3.0 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarDraw 3.0 Template</value> + <value xml:lang="x-translate">StarDraw 3.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_3_0__StarImpress_.xcu b/filter/source/config/fragments/filters/StarDraw_3_0__StarImpress_.xcu new file mode 100644 index 000000000000..b0ce586e9ee9 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_3_0__StarImpress_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarDraw 3.0 (StarImpress)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarDraw 3.0 (%productname% Impress)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0.xcu b/filter/source/config/fragments/filters/StarDraw_5_0.xcu new file mode 100644 index 000000000000..da5376827a41 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarDraw 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarDraw 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage.xcu b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage.xcu new file mode 100644 index 000000000000..298ab1215761 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarDraw 5.0 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_50_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress_.xcu b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress_.xcu new file mode 100644 index 000000000000..8261bc648b93 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarDraw 5.0 Vorlage (StarImpress)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_50_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress__ui.xcu b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress__ui.xcu new file mode 100644 index 000000000000..2ecf87a4c5f5 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarDraw 5.0 Vorlage (StarImpress)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarDraw 5.0 Template (%productname% Impress)</value> + <value xml:lang="x-translate">StarDraw 5.0 Template (%productname% Impress)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage_ui.xcu b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage_ui.xcu new file mode 100644 index 000000000000..bd057e44dc46 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarDraw 5.0 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarDraw 5.0 Template</value> + <value xml:lang="x-translate">StarDraw 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarDraw_5_0__StarImpress_.xcu b/filter/source/config/fragments/filters/StarDraw_5_0__StarImpress_.xcu new file mode 100644 index 000000000000..a76ebfc3f3c2 --- /dev/null +++ b/filter/source/config/fragments/filters/StarDraw_5_0__StarImpress_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarDraw 5.0 (StarImpress)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarDraw 5.0 (%productname% Impress)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>draw_StarDraw_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_4_0.xcu b/filter/source/config/fragments/filters/StarImpress_4_0.xcu new file mode 100644 index 000000000000..b8bd8c51bbb0 --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_4_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarImpress 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarImpress 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>impress_StarImpress_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage.xcu b/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage.xcu new file mode 100644 index 000000000000..68ad61d1270e --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarImpress 4.0 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>impress_StarImpress_40_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage_ui.xcu b/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage_ui.xcu new file mode 100644 index 000000000000..2071a51476d0 --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_4_0_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarImpress 4.0 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarImpress 4.0 Template</value> + <value xml:lang="x-translate">StarImpress 4.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_5_0.xcu b/filter/source/config/fragments/filters/StarImpress_5_0.xcu new file mode 100644 index 000000000000..544b9187d1f2 --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarImpress 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarImpress 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>impress_StarImpress_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage.xcu b/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage.xcu new file mode 100644 index 000000000000..c73995cca8c6 --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarImpress 5.0 Vorlage" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>impress_StarImpress_50_Vorlage</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage_ui.xcu b/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage_ui.xcu new file mode 100644 index 000000000000..e1711fec4e8d --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_5_0_Vorlage_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarImpress 5.0 Vorlage"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarImpress 5.0 Template</value> + <value xml:lang="x-translate">StarImpress 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_5_0__packed_.xcu b/filter/source/config/fragments/filters/StarImpress_5_0__packed_.xcu new file mode 100644 index 000000000000..e208e69b6ad1 --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_5_0__packed_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarImpress 5.0 (packed)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER PACKED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>impress_StarImpress_50_packed</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarImpress 5.0 Packed</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarImpress_5_0__packed__ui.xcu b/filter/source/config/fragments/filters/StarImpress_5_0__packed__ui.xcu new file mode 100644 index 000000000000..2f87eb815f1b --- /dev/null +++ b/filter/source/config/fragments/filters/StarImpress_5_0__packed__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarImpress 5.0 (packed)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarImpress 5.0 Packed</value> + <value xml:lang="x-translate">StarImpress 5.0 Packed</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarMath_2_0.xcu b/filter/source/config/fragments/filters/StarMath_2_0.xcu new file mode 100644 index 000000000000..bc67524cc407 --- /dev/null +++ b/filter/source/config/fragments/filters/StarMath_2_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarMath 2.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value>1</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarMath 2.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>math_StarMath_20</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarMath_3_0.xcu b/filter/source/config/fragments/filters/StarMath_3_0.xcu new file mode 100644 index 000000000000..916b8208e2ca --- /dev/null +++ b/filter/source/config/fragments/filters/StarMath_3_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarMath 3.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>0</value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>math_StarMath_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarMath 3.0</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarMath_4_0.xcu b/filter/source/config/fragments/filters/StarMath_4_0.xcu new file mode 100644 index 000000000000..aad13996f029 --- /dev/null +++ b/filter/source/config/fragments/filters/StarMath_4_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarMath 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarMath 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>math_StarMath_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarMath_5_0.xcu b/filter/source/config/fragments/filters/StarMath_5_0.xcu new file mode 100644 index 000000000000..e583d4bf32ec --- /dev/null +++ b/filter/source/config/fragments/filters/StarMath_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarMath 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarMath 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>math_StarMath_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Base_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Base_.xcu new file mode 100644 index 000000000000..c9bc143ac3d8 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Base_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Base)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT OWN DEFAULT 3RDPARTYFILTER ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>StarBase</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sdb.OfficeDatabaseDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Base__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Base__ui.xcu new file mode 100644 index 000000000000..0328738a1bee --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Base__ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="StarOffice XML (Base)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Database</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Calc_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Calc_.xcu new file mode 100644 index 000000000000..36970e6aadae --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Calc_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Calc)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>calc_StarOffice_XML_Calc</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Calc__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Calc__ui.xcu new file mode 100644 index 000000000000..0f8abbabf972 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Calc__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Calc)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Spreadsheet</value> + <value xml:lang="x-translate">%productname% %formatversion% Spreadsheet</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Chart_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Chart_.xcu new file mode 100644 index 000000000000..b7e05cb17860 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Chart_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Chart)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT OWN ALIEN NOTINFILEDIALOG NOTINCHOOSER ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.chart2.XMLFilter</value></prop> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>chart_StarOffice_XML_Chart</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.chart2.ChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Chart__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Chart__ui.xcu new file mode 100644 index 000000000000..c74974f0cea5 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Chart__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Chart)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Chart</value> + <value xml:lang="x-translate">%productname% %formatversion% Chart</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Draw_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Draw_.xcu new file mode 100644 index 000000000000..089cc612d6c6 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Draw_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Draw)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>draw_StarOffice_XML_Draw</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Draw__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Draw__ui.xcu new file mode 100644 index 000000000000..32de3a5842a3 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Draw__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Draw)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Drawing</value> + <value xml:lang="x-translate">%productname% %formatversion% Drawing</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Impress_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Impress_.xcu new file mode 100644 index 000000000000..5912555177d1 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Impress_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Impress)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>impress_StarOffice_XML_Impress</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Impress__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Impress__ui.xcu new file mode 100644 index 000000000000..83adfb8269dd --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Impress__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Impress)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Presentation</value> + <value xml:lang="x-translate">%productname% %formatversion% Presentation</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Math_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Math_.xcu new file mode 100644 index 000000000000..282bff7448ed --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Math_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Math)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>math_StarOffice_XML_Math</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Math__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Math__ui.xcu new file mode 100644 index 000000000000..57315a718777 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Math__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Math)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Formula</value> + <value xml:lang="x-translate">%productname% %formatversion% Formula</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Writer_.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Writer_.xcu new file mode 100644 index 000000000000..c86b1d3deda7 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Writer_.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarOffice XML (Writer)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_StarOffice_XML_Writer</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarOffice_XML__Writer__ui.xcu b/filter/source/config/fragments/filters/StarOffice_XML__Writer__ui.xcu new file mode 100644 index 000000000000..20be1b1e1c04 --- /dev/null +++ b/filter/source/config/fragments/filters/StarOffice_XML__Writer__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarOffice XML (Writer)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Text Document</value> + <value xml:lang="x-translate">%productname% %formatversion% Text Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_1_0.xcu b/filter/source/config/fragments/filters/StarWriter_1_0.xcu new file mode 100644 index 000000000000..23c6715f728b --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_1_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 1.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>SWG1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_10</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_2_0.xcu b/filter/source/config/fragments/filters/StarWriter_2_0.xcu new file mode 100644 index 000000000000..2617a6f330de --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_2_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 2.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>SWG</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 2.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_20</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_3_0.xcu b/filter/source/config/fragments/filters/StarWriter_3_0.xcu new file mode 100644 index 000000000000..6942622a7a14 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_3_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 3.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..7902ef2181b8 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter 3.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW3V</value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_30_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..a888cf6518d7 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter 3.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter 3.0 Template</value> + <value xml:lang="x-translate">StarWriter 3.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_GlobalDocument_.xcu b/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_GlobalDocument_.xcu new file mode 100644 index 000000000000..4c5b0aa89af8 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_GlobalDocument_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 3.0 (StarWriter/GlobalDocument)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW3</value></prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 3.0</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_Web_.xcu b/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_Web_.xcu new file mode 100644 index 000000000000..a68affbce5ea --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_Web_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 3.0 (StarWriter/Web)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 3.0 (%productname% Writer/Web)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3450</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_30</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0.xcu b/filter/source/config/fragments/filters/StarWriter_4_0.xcu new file mode 100644 index 000000000000..5c23ef96809c --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 4.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument.xcu b/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument.xcu new file mode 100644 index 000000000000..3992a973d896 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter 4.0/GlobalDocument" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4</value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_globaldocument_StarWriter_40GlobalDocument</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument_ui.xcu b/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument_ui.xcu new file mode 100644 index 000000000000..b1aafd2309bb --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter 4.0/GlobalDocument"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter 4.0 Master Document</value> + <value xml:lang="x-translate">StarWriter 4.0 Master Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..16feb8df0b3d --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter 4.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4V</value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_40_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..003c3274ca8a --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter 4.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter 4.0 Template</value> + <value xml:lang="x-translate">StarWriter 4.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_GlobalDocument_.xcu b/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_GlobalDocument_.xcu new file mode 100644 index 000000000000..9eff3b736f14 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_GlobalDocument_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 4.0 (StarWriter/GlobalDocument)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4</value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 4.0</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_Web_.xcu b/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_Web_.xcu new file mode 100644 index 000000000000..04f97b796b6c --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_Web_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 4.0 (StarWriter/Web)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 4.0 (%productname% Writer/Web)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_40</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0.xcu b/filter/source/config/fragments/filters/StarWriter_5_0.xcu new file mode 100644 index 000000000000..4556fc72d8c8 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 5.0" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument.xcu b/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument.xcu new file mode 100644 index 000000000000..3604d7c828b8 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter 5.0/GlobalDocument" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5</value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_globaldocument_StarWriter_50GlobalDocument</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument_ui.xcu b/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument_ui.xcu new file mode 100644 index 000000000000..912abc802244 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter 5.0/GlobalDocument"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter 5.0 Master Document</value> + <value xml:lang="x-translate">StarWriter 5.0 Master Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..c33a323126cc --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter 5.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5V</value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_50_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..caf14d0d308f --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter 5.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter 5.0 Template</value> + <value xml:lang="x-translate">StarWriter 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_GlobalDocument_.xcu b/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_GlobalDocument_.xcu new file mode 100644 index 000000000000..c5bef5aead6e --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_GlobalDocument_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 5.0 (StarWriter/GlobalDocument)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5</value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 5.0</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_Web_.xcu b/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_Web_.xcu new file mode 100644 index 000000000000..35cf7c56746d --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_Web_.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter 5.0 (StarWriter/Web)" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter 5.0 (%productname% Writer/Web)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_50</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_DOS.xcu b/filter/source/config/fragments/filters/StarWriter_DOS.xcu new file mode 100644 index 000000000000..493151f6f806 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_DOS.xcu @@ -0,0 +1,13 @@ + <node oor:name="StarWriter DOS" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>SW6</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">StarWriter DOS</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_StarWriter_DOS</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..51367423c493 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter/Web 4.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW4VWEB</value></prop> + <prop oor:name="FileFormatVersion"><value>3580</value></prop> + <prop oor:name="Type"><value>writer_web_StarWriterWeb_40_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..3dd348296d40 --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter/Web 4.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter/Web 4.0 Template</value> + <value xml:lang="x-translate">StarWriter/Web 4.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template.xcu b/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template.xcu new file mode 100644 index 000000000000..2f696b08defa --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="StarWriter/Web 5.0 Vorlage/Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>CSW5VWEB</value></prop> + <prop oor:name="FileFormatVersion"><value>5050</value></prop> + <prop oor:name="Type"><value>writer_web_StarWriterWeb_50_VorlageTemplate</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template_ui.xcu b/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template_ui.xcu new file mode 100644 index 000000000000..1d194cb4ac4c --- /dev/null +++ b/filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="StarWriter/Web 5.0 Vorlage/Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">StarWriter/Web 5.0 Template</value> + <value xml:lang="x-translate">StarWriter/Web 5.0 Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/T602Document.xcu b/filter/source/config/fragments/filters/T602Document.xcu new file mode 100644 index 000000000000..544364913dff --- /dev/null +++ b/filter/source/config/fragments/filters/T602Document.xcu @@ -0,0 +1,13 @@ + <node oor:name="T602Document" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN USESOPTIONS 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.T602ImportFilter</value></prop> + <prop oor:name="UserData"><value>602</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">T602 Document</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_T602_Document</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/TGA___Truevision_TARGA.xcu b/filter/source/config/fragments/filters/TGA___Truevision_TARGA.xcu new file mode 100644 index 000000000000..48cd2ad8731a --- /dev/null +++ b/filter/source/config/fragments/filters/TGA___Truevision_TARGA.xcu @@ -0,0 +1,13 @@ + <node oor:name="TGA - Truevision TARGA" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">TGA - Truevision Targa</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>tga_Truevision_TARGA</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/TIF___Tag_Image_File.xcu b/filter/source/config/fragments/filters/TIF___Tag_Image_File.xcu new file mode 100644 index 000000000000..6ed47b00d6ef --- /dev/null +++ b/filter/source/config/fragments/filters/TIF___Tag_Image_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="TIF - Tag Image File" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>tif_Tag_Image_File</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text.xcu b/filter/source/config/fragments/filters/Text.xcu new file mode 100644 index 000000000000..ac11931b75db --- /dev/null +++ b/filter/source/config/fragments/filters/Text.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>TEXT</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Text</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__StarWriter_Web_.xcu b/filter/source/config/fragments/filters/Text__StarWriter_Web_.xcu new file mode 100644 index 000000000000..5161a52b99a7 --- /dev/null +++ b/filter/source/config/fragments/filters/Text__StarWriter_Web_.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text (StarWriter/Web)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>TEXT</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Text</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__StarWriter_Web__ui.xcu b/filter/source/config/fragments/filters/Text__StarWriter_Web__ui.xcu new file mode 100644 index 000000000000..98175c30bf6f --- /dev/null +++ b/filter/source/config/fragments/filters/Text__StarWriter_Web__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text (StarWriter/Web)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text (%productname% Writer/Web)</value> + <value xml:lang="x-translate">Text (%productname% Writer/Web)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Text___txt___csv__StarCalc_.xcu b/filter/source/config/fragments/filters/Text___txt___csv__StarCalc_.xcu new file mode 100644 index 000000000000..69b4ff752f06 --- /dev/null +++ b/filter/source/config/fragments/filters/Text___txt___csv__StarCalc_.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text - txt - csv (StarCalc)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN USESOPTIONS</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_Text_txt_csv_StarCalc</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text___txt___csv__StarCalc__ui.xcu b/filter/source/config/fragments/filters/Text___txt___csv__StarCalc__ui.xcu new file mode 100644 index 000000000000..7cf434011d1f --- /dev/null +++ b/filter/source/config/fragments/filters/Text___txt___csv__StarCalc__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text - txt - csv (StarCalc)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text CSV</value> + <value xml:lang="x-translate">Text CSV</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded_.xcu b/filter/source/config/fragments/filters/Text__encoded_.xcu new file mode 100644 index 000000000000..a0b19b9b32bb --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded_.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text (encoded)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Writer.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>TEXT_DLG</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Text_encoded</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument_.xcu b/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument_.xcu new file mode 100644 index 000000000000..2c39de832bb6 --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument_.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text (encoded) (StarWriter/GlobalDocument)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Writer.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>TEXT_DLG</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Text</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument__ui.xcu b/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument__ui.xcu new file mode 100644 index 000000000000..9d2bd9d86e85 --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text (encoded) (StarWriter/GlobalDocument)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text Encoded (%productname% Master Document)</value> + <value xml:lang="x-translate">Text Encoded (%productname% Master Document)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web_.xcu b/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web_.xcu new file mode 100644 index 000000000000..f8ced3003be1 --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web_.xcu @@ -0,0 +1,10 @@ + <node oor:name="Text (encoded) (StarWriter/Web)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Writer.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>TEXT_DLG</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Text</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web__ui.xcu b/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web__ui.xcu new file mode 100644 index 000000000000..83e261a77147 --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded___StarWriter_Web__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text (encoded) (StarWriter/Web)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text Encoded (%productname% Writer/Web)</value> + <value xml:lang="x-translate">Text Encoded (%productname% Writer/Web)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Text__encoded__ui.xcu b/filter/source/config/fragments/filters/Text__encoded__ui.xcu new file mode 100644 index 000000000000..0ed1b78d615c --- /dev/null +++ b/filter/source/config/fragments/filters/Text__encoded__ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text (encoded)"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text Encoded</value> + <value xml:lang="x-translate">Text Encoded</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Text_ui.xcu b/filter/source/config/fragments/filters/Text_ui.xcu new file mode 100644 index 000000000000..f0d198f8301b --- /dev/null +++ b/filter/source/config/fragments/filters/Text_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="Text"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Text</value> + <value xml:lang="x-translate">Text</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Total_Word__W4W_.xcu b/filter/source/config/fragments/filters/Total_Word__W4W_.xcu new file mode 100644 index 000000000000..e50e38a6d0d7 --- /dev/null +++ b/filter/source/config/fragments/filters/Total_Word__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Total Word (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W14_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Total Word</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Total_Word_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_presentation.xcu b/filter/source/config/fragments/filters/UOF_presentation.xcu new file mode 100644 index 000000000000..f62c623c9af5 --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_presentation.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF presentation" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>Unified_Office_Format_presentation</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Impress.XMLOasisImporter,com.sun.star.comp.Impress.XMLOasisExporter,../share/xslt/import/uof/uof2odf_presentation.xsl,../share/xslt/export/uof/odf2uof_presentation.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>Unified Office Format presentation</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_presentation_ui.xcu b/filter/source/config/fragments/filters/UOF_presentation_ui.xcu new file mode 100644 index 000000000000..46e822cacba6 --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_presentation_ui.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF presentation" oor:op="replace"> + <prop oor:name="UIName"> + <value xml:lang="el">Unified Office Format presentation</value> + <value xml:lang="en-US">Unified Office Format presentation</value> + <value xml:lang="hu">Unified Office Format presentation</value> + <value xml:lang="cs">Unified Office Format presentation</value> + <value xml:lang="sk">Unified Office Format presentation</value> + <value xml:lang="sl">Unified Office Format presentation</value> + <value xml:lang="nl">Unified Office Format presentation</value> + <value xml:lang="da">Unified Office Format presentation</value> + <value xml:lang="de">Unified Office Format presentation</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_spreadsheet.xcu b/filter/source/config/fragments/filters/UOF_spreadsheet.xcu new file mode 100644 index 000000000000..549ed79ac2e0 --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_spreadsheet.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF spreadsheet" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>Unified_Office_Format_spreadsheet</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Calc.XMLOasisImporter,com.sun.star.comp.Calc.XMLOasisExporter,../share/xslt/import/uof/uof2odf_spreadsheet.xsl,../share/xslt/export/uof/odf2uof_spreadsheet.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>Unified Office Format spreadsheet</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_spreadsheet_ui.xcu b/filter/source/config/fragments/filters/UOF_spreadsheet_ui.xcu new file mode 100644 index 000000000000..1b2a88b0d868 --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_spreadsheet_ui.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF spreadsheet" oor:op="replace"> + <prop oor:name="UIName"> + <value xml:lang="el">Unified Office Format spreadsheet</value> + <value xml:lang="en-US">Unified Office Format spreadsheet</value> + <value xml:lang="hu">Unified Office Format spreadsheet</value> + <value xml:lang="cs">Unified Office Format spreadsheet</value> + <value xml:lang="sk">Unified Office Format spreadsheet</value> + <value xml:lang="sl">Unified Office Format spreadsheet</value> + <value xml:lang="nl">Unified Office Format spreadsheet</value> + <value xml:lang="da">Unified Office Format spreadsheet</value> + <value xml:lang="de">Unified Office Format spreadsheet</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_text.xcu b/filter/source/config/fragments/filters/UOF_text.xcu new file mode 100644 index 000000000000..3dd6f2bb3273 --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_text.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF text" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>Unified_Office_Format_text</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Writer.XMLOasisImporter,com.sun.star.comp.Writer.XMLOasisExporter,../share/xslt/import/uof/uof2odf_text.xsl,../share/xslt/export/uof/odf2uof_text.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>Unified Office Format text</value> + </prop> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/UOF_text_ui.xcu b/filter/source/config/fragments/filters/UOF_text_ui.xcu new file mode 100644 index 000000000000..bf7170a68a9d --- /dev/null +++ b/filter/source/config/fragments/filters/UOF_text_ui.xcu @@ -0,0 +1,13 @@ + <node oor:name="UOF text" oor:op="replace"> + <prop oor:name="UIName"> + <value xml:lang="el">Unified Office Format text</value> + <value xml:lang="en-US">Unified Office Format text</value> + <value xml:lang="hu">Unified Office Format text</value> + <value xml:lang="cs">Unified Office Format text</value> + <value xml:lang="sk">Unified Office Format text</value> + <value xml:lang="sl">Unified Office Format text</value> + <value xml:lang="nl">Unified Office Format text</value> + <value xml:lang="da">Unified Office Format text</value> + <value xml:lang="de">Unified Office Format text</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/Uniplex_V7_V8__W4W_.xcu b/filter/source/config/fragments/filters/Uniplex_V7_V8__W4W_.xcu new file mode 100644 index 000000000000..ca42d4f81c78 --- /dev/null +++ b/filter/source/config/fragments/filters/Uniplex_V7_V8__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Uniplex V7-V8 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W101_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Uniplex V7-V8</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Uniplex_V7_V8_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Uniplex_onGO__W4W_.xcu b/filter/source/config/fragments/filters/Uniplex_onGO__W4W_.xcu new file mode 100644 index 000000000000..58f5c1ce4648 --- /dev/null +++ b/filter/source/config/fragments/filters/Uniplex_onGO__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Uniplex onGO (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W37_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Uniplex onGO</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Uniplex_onGO_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/VolksWriter_3_and_4__W4W_.xcu b/filter/source/config/fragments/filters/VolksWriter_3_and_4__W4W_.xcu new file mode 100644 index 000000000000..61c25a47ede2 --- /dev/null +++ b/filter/source/config/fragments/filters/VolksWriter_3_and_4__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="VolksWriter 3 and 4 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W14_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">VolksWriter 3 and 4</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_VolksWriter_3_and_4_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/VolksWriter_Deluxe__W4W_.xcu b/filter/source/config/fragments/filters/VolksWriter_Deluxe__W4W_.xcu new file mode 100644 index 000000000000..ac95b135b0ad --- /dev/null +++ b/filter/source/config/fragments/filters/VolksWriter_Deluxe__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="VolksWriter Deluxe (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W11_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">VolksWriter Deluxe</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_VolksWriter_Deluxe_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WITA__W4W_.xcu b/filter/source/config/fragments/filters/WITA__W4W_.xcu new file mode 100644 index 000000000000..2f27c4041107 --- /dev/null +++ b/filter/source/config/fragments/filters/WITA__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WITA (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W34_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WITA</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WITA_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WMF___MS_Windows_Metafile.xcu b/filter/source/config/fragments/filters/WMF___MS_Windows_Metafile.xcu new file mode 100644 index 000000000000..2210b3afbf8c --- /dev/null +++ b/filter/source/config/fragments/filters/WMF___MS_Windows_Metafile.xcu @@ -0,0 +1,13 @@ + <node oor:name="WMF - MS Windows Metafile" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WMF - Windows Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>wmf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Wang_II_SWP__W4W_.xcu b/filter/source/config/fragments/filters/Wang_II_SWP__W4W_.xcu new file mode 100644 index 000000000000..70f1d1967eae --- /dev/null +++ b/filter/source/config/fragments/filters/Wang_II_SWP__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Wang II SWP (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W88_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Wang II SWP</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Wang_II_SWP_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Wang_PC__W4W_.xcu b/filter/source/config/fragments/filters/Wang_PC__W4W_.xcu new file mode 100644 index 000000000000..ae9e3682ce5f --- /dev/null +++ b/filter/source/config/fragments/filters/Wang_PC__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Wang PC (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W26_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Wang PC</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Wang_PC_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Wang_WP_Plus__W4W_.xcu b/filter/source/config/fragments/filters/Wang_WP_Plus__W4W_.xcu new file mode 100644 index 000000000000..fc042b041d8b --- /dev/null +++ b/filter/source/config/fragments/filters/Wang_WP_Plus__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Wang WP Plus (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W89_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Wang WP Plus</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Wang_WP_Plus_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Win_Write_3_x__W4W_.xcu b/filter/source/config/fragments/filters/Win_Write_3_x__W4W_.xcu new file mode 100644 index 000000000000..fcbeeac669f2 --- /dev/null +++ b/filter/source/config/fragments/filters/Win_Write_3_x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Win Write 3.x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W43_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Win Write 3.x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Win_Write_3x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WiziWord_3_0__W4W_.xcu b/filter/source/config/fragments/filters/WiziWord_3_0__W4W_.xcu new file mode 100644 index 000000000000..76ce9136fb54 --- /dev/null +++ b/filter/source/config/fragments/filters/WiziWord_3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WiziWord 3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W47_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WiziWord 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WiziWord_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect.xcu b/filter/source/config/fragments/filters/WordPerfect.xcu new file mode 100644 index 000000000000..0683be1dc48a --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN USESOPTIONS 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.WordPerfectImportFilter</value></prop> + <prop oor:name="UserData"><value>WPD</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect Document</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Document</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_4_1__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_4_1__W4W_.xcu new file mode 100644 index 000000000000..bd84d6d44af4 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_4_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 4.1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W06_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 4.1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_41_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_4_2__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_4_2__W4W_.xcu new file mode 100644 index 000000000000..b923c2f4b221 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_4_2__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 4.2 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W06_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 4.2</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_42_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_5_0__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_5_0__W4W_.xcu new file mode 100644 index 000000000000..7c95fcfd0003 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_5_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W07_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_5_1__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_5_1__W4W_.xcu new file mode 100644 index 000000000000..2b5447c85585 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_5_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 5.1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W07_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 5.1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_51_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_6_0__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_6_0__W4W_.xcu new file mode 100644 index 000000000000..5fb7baa804d5 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_6_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 6.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W48_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 6.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_60_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_6_1__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_6_1__W4W_.xcu new file mode 100644 index 000000000000..d349e1002499 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_6_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect 6.1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W48_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect 6.1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_61_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_Mac_1__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_Mac_1__W4W_.xcu new file mode 100644 index 000000000000..5da63256533e --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_Mac_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect Mac 1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W59_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect Mac 1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Mac_1_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_Mac_2__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_Mac_2__W4W_.xcu new file mode 100644 index 000000000000..04dc9fdb1449 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_Mac_2__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect Mac 2 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W60_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect Mac 2</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Mac_2_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect_Mac_3__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect_Mac_3__W4W_.xcu new file mode 100644 index 000000000000..7768461689fd --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect_Mac_3__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect Mac 3 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W60_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect Mac 3</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Mac_3_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect__Win__5_1_5_2__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect__Win__5_1_5_2__W4W_.xcu new file mode 100644 index 000000000000..9d85af7225e6 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect__Win__5_1_5_2__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect (Win) 5.1-5.2 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W07_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect (Win) 5.1-5.2</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Win_51_52_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect__Win__6_0__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect__Win__6_0__W4W_.xcu new file mode 100644 index 000000000000..5c3ceaa6e508 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect__Win__6_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect (Win) 6.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W48_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect (Win) 6.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Win_60_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect__Win__6_1__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect__Win__6_1__W4W_.xcu new file mode 100644 index 000000000000..f6f837a2dff1 --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect__Win__6_1__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect (Win) 6.1 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W48_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect (Win) 6.1</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Win_61_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordPerfect__Win__7_0__W4W_.xcu b/filter/source/config/fragments/filters/WordPerfect__Win__7_0__W4W_.xcu new file mode 100644 index 000000000000..5af0da68364b --- /dev/null +++ b/filter/source/config/fragments/filters/WordPerfect__Win__7_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordPerfect (Win) 7.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W48_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordPerfect (Win) 7.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordPerfect_Win_70_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_2000_Rel__3_0__W4W_.xcu b/filter/source/config/fragments/filters/WordStar_2000_Rel__3_0__W4W_.xcu new file mode 100644 index 000000000000..ede22402b842 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_2000_Rel__3_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 2000 Rel. 3.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W09_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 2000 Rel. 3.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_2000_Rel_30_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_2000_Rel__3_5__W4W_.xcu b/filter/source/config/fragments/filters/WordStar_2000_Rel__3_5__W4W_.xcu new file mode 100644 index 000000000000..0d942c7bac3f --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_2000_Rel__3_5__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 2000 Rel. 3.5 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W09_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 2000 Rel. 3.5</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_2000_Rel_35_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_3_3x__W4W_.xcu b/filter/source/config/fragments/filters/WordStar_3_3x__W4W_.xcu new file mode 100644 index 000000000000..8478b7c8dcc7 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_3_3x__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 3.3x (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 3.3x</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_33x_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_3_45__W4W_.xcu b/filter/source/config/fragments/filters/WordStar_3_45__W4W_.xcu new file mode 100644 index 000000000000..38d7f827624e --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_3_45__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 3.45 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 3.45</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_345_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_4_0___W4W_.xcu b/filter/source/config/fragments/filters/WordStar_4_0___W4W_.xcu new file mode 100644 index 000000000000..2c7910f7d341 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_4_0___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 4.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 4.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_40_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_5_0___W4W_.xcu b/filter/source/config/fragments/filters/WordStar_5_0___W4W_.xcu new file mode 100644 index 000000000000..94444b0a424b --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_5_0___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_5_5___W4W_.xcu b/filter/source/config/fragments/filters/WordStar_5_5___W4W_.xcu new file mode 100644 index 000000000000..e3714d13fde5 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_5_5___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 5.5 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 5.5</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_55_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_6_0___W4W_.xcu b/filter/source/config/fragments/filters/WordStar_6_0___W4W_.xcu new file mode 100644 index 000000000000..08716c85cc62 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_6_0___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 6.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_5</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 6.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_60_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar_7_0___W4W_.xcu b/filter/source/config/fragments/filters/WordStar_7_0___W4W_.xcu new file mode 100644 index 000000000000..a67aefdc87a8 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar_7_0___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar 7.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W04_6</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar 7.0 </value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_70_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WordStar__Win__1_x_2_0__W4W_.xcu b/filter/source/config/fragments/filters/WordStar__Win__1_x_2_0__W4W_.xcu new file mode 100644 index 000000000000..ac46209420a5 --- /dev/null +++ b/filter/source/config/fragments/filters/WordStar__Win__1_x_2_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WordStar (Win) 1.x-2.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W37_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WordStar (Win) 1.x-2.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WordStar_Win_1x_20_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/WriteNow_3_0__Macintosh___W4W_.xcu b/filter/source/config/fragments/filters/WriteNow_3_0__Macintosh___W4W_.xcu new file mode 100644 index 000000000000..4d4a9fe623c7 --- /dev/null +++ b/filter/source/config/fragments/filters/WriteNow_3_0__Macintosh___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="WriteNow 3.0 (Macintosh) (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W62_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WriteNow 3.0 (Macintosh)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_WriteNow_30_Macintosh_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/Writing_Assistant__W4W_.xcu b/filter/source/config/fragments/filters/Writing_Assistant__W4W_.xcu new file mode 100644 index 000000000000..8673c1a98a63 --- /dev/null +++ b/filter/source/config/fragments/filters/Writing_Assistant__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="Writing Assistant (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W13_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Writing Assistant</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_Writing_Assistant_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XBM___X_Consortium.xcu b/filter/source/config/fragments/filters/XBM___X_Consortium.xcu new file mode 100644 index 000000000000..04aa82ce974e --- /dev/null +++ b/filter/source/config/fragments/filters/XBM___X_Consortium.xcu @@ -0,0 +1,13 @@ + <node oor:name="XBM - X-Consortium" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XBM - X Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>xbm_X_Consortium</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XEROX_XIF_5_0__Illustrator___W4W_.xcu b/filter/source/config/fragments/filters/XEROX_XIF_5_0__Illustrator___W4W_.xcu new file mode 100644 index 000000000000..ee10136d54bf --- /dev/null +++ b/filter/source/config/fragments/filters/XEROX_XIF_5_0__Illustrator___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XEROX XIF 5.0 (Illustrator) (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W103_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XEROX XIF 5.0 (Illustrator)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XEROX_XIF_50_Illustrator_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XEROX_XIF_5_0__W4W_.xcu b/filter/source/config/fragments/filters/XEROX_XIF_5_0__W4W_.xcu new file mode 100644 index 000000000000..4f647eff5641 --- /dev/null +++ b/filter/source/config/fragments/filters/XEROX_XIF_5_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XEROX XIF 5.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W103_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XEROX XIF 5.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XEROX_XIF_50_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XEROX_XIF_6_0__Color_Bitmap___W4W_.xcu b/filter/source/config/fragments/filters/XEROX_XIF_6_0__Color_Bitmap___W4W_.xcu new file mode 100644 index 000000000000..cc2648a980e7 --- /dev/null +++ b/filter/source/config/fragments/filters/XEROX_XIF_6_0__Color_Bitmap___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XEROX XIF 6.0 (Color Bitmap) (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W103_4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XEROX XIF 6.0 (Color Bitmap)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XEROX_XIF_60_Color_Bitmap_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XEROX_XIF_6_0__Res_Graphic___W4W_.xcu b/filter/source/config/fragments/filters/XEROX_XIF_6_0__Res_Graphic___W4W_.xcu new file mode 100644 index 000000000000..60501f505e06 --- /dev/null +++ b/filter/source/config/fragments/filters/XEROX_XIF_6_0__Res_Graphic___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XEROX XIF 6.0 (Res Graphic) (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W103_8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XEROX XIF 6.0 (Res Graphic)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XEROX_XIF_60_Res_Graphic_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XHTML_Calc_File.xcu b/filter/source/config/fragments/filters/XHTML_Calc_File.xcu new file mode 100644 index 000000000000..60486621ec5c --- /dev/null +++ b/filter/source/config/fragments/filters/XHTML_Calc_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="XHTML Calc File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>XHTML_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Calc.XMLOasisImporter,com.sun.star.comp.Calc.XMLOasisExporter,,../share/xslt/export/xhtml/opendoc2xhtml.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>XHTML</value> + </prop> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XHTML_Draw_File.xcu b/filter/source/config/fragments/filters/XHTML_Draw_File.xcu new file mode 100644 index 000000000000..fe7aa6e85773 --- /dev/null +++ b/filter/source/config/fragments/filters/XHTML_Draw_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="XHTML Draw File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>XHTML_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Draw.XMLOasisImporter,com.sun.star.comp.Draw.XMLOasisExporter,,../share/xslt/export/xhtml/opendoc2xhtml.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>XHTML</value> + </prop> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XHTML_Impress_File.xcu b/filter/source/config/fragments/filters/XHTML_Impress_File.xcu new file mode 100644 index 000000000000..cdec23746cd0 --- /dev/null +++ b/filter/source/config/fragments/filters/XHTML_Impress_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="XHTML Impress File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>XHTML_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Impress.XMLOasisImporter,com.sun.star.comp.Impress.XMLOasisExporter,,../share/xslt/export/xhtml/opendoc2xhtml.xsl</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>XHTML</value> + </prop> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XHTML_Writer_File.xcu b/filter/source/config/fragments/filters/XHTML_Writer_File.xcu new file mode 100644 index 000000000000..32d954ec52c6 --- /dev/null +++ b/filter/source/config/fragments/filters/XHTML_Writer_File.xcu @@ -0,0 +1,13 @@ + <node oor:name="XHTML Writer File" oor:op="replace"> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>XHTML_File</value></prop> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UserData"><value oor:separator=",">com.sun.star.documentconversion.XSLTFilter,,com.sun.star.comp.Writer.XMLOasisImporter,com.sun.star.comp.Writer.XMLOasisExporter,,../share/xslt/export/xhtml/opendoc2xhtml.xsl,,true</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.XmlFilterAdaptor</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="UIName"> + <value>XHTML</value> + </prop> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XPM.xcu b/filter/source/config/fragments/filters/XPM.xcu new file mode 100644 index 000000000000..f4b54ea308ef --- /dev/null +++ b/filter/source/config/fragments/filters/XPM.xcu @@ -0,0 +1,13 @@ + <node oor:name="XPM" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XPM - X PixMap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>xpm_XPM</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite_III___W4W_.xcu b/filter/source/config/fragments/filters/XyWrite_III___W4W_.xcu new file mode 100644 index 000000000000..6cc42a840f22 --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite_III___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite III ( W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_0</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite III</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_III_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite_III____W4W_.xcu b/filter/source/config/fragments/filters/XyWrite_III____W4W_.xcu new file mode 100644 index 000000000000..d00ce5ef1294 --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite_III____W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite III+ ( W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_1</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite III+</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_IIIP_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite_IV__W4W_.xcu b/filter/source/config/fragments/filters/XyWrite_IV__W4W_.xcu new file mode 100644 index 000000000000..b9b12ed0f855 --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite_IV__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite IV (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_4</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite IV</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_IV_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite_Sig___Win___W4W_.xcu b/filter/source/config/fragments/filters/XyWrite_Sig___Win___W4W_.xcu new file mode 100644 index 000000000000..b9a773af5372 --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite_Sig___Win___W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite Sig. (Win) (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_3</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite Sig. (Win)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_Sig_Win_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite_Signature__W4W_.xcu b/filter/source/config/fragments/filters/XyWrite_Signature__W4W_.xcu new file mode 100644 index 000000000000..50730f7983cb --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite_Signature__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite Signature (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_2</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite Signature</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_Signature_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/XyWrite__Win__1_0__W4W_.xcu b/filter/source/config/fragments/filters/XyWrite__Win__1_0__W4W_.xcu new file mode 100644 index 000000000000..e1154464e1e1 --- /dev/null +++ b/filter/source/config/fragments/filters/XyWrite__Win__1_0__W4W_.xcu @@ -0,0 +1,13 @@ + <node oor:name="XyWrite (Win) 1.0 (W4W)" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.office.BF_MigrateFilter</value></prop> + <prop oor:name="UserData"><value>W4W17_5</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XyWrite (Win) 1.0</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_XyWrite_Win_10_W4W</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/calc8.xcu b/filter/source/config/fragments/filters/calc8.xcu new file mode 100644 index 000000000000..1c77a96ad887 --- /dev/null +++ b/filter/source/config/fragments/filters/calc8.xcu @@ -0,0 +1,10 @@ + <node oor:name="calc8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN DEFAULT ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>calc8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/calc8_template.xcu b/filter/source/config/fragments/filters/calc8_template.xcu new file mode 100644 index 000000000000..5b5c1d5c3d56 --- /dev/null +++ b/filter/source/config/fragments/filters/calc8_template.xcu @@ -0,0 +1,10 @@ + <node oor:name="calc8_template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>calc8_template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/calc8_template_ui.xcu b/filter/source/config/fragments/filters/calc8_template_ui.xcu new file mode 100644 index 000000000000..47c22a0544ff --- /dev/null +++ b/filter/source/config/fragments/filters/calc8_template_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="calc8_template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Spreadsheet Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/calc8_ui.xcu b/filter/source/config/fragments/filters/calc8_ui.xcu new file mode 100644 index 000000000000..57daf1f9a709 --- /dev/null +++ b/filter/source/config/fragments/filters/calc8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="calc8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Spreadsheet</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/calc_HTML_WebQuery.xcu b/filter/source/config/fragments/filters/calc_HTML_WebQuery.xcu new file mode 100644 index 000000000000..8808adc140a1 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_HTML_WebQuery.xcu @@ -0,0 +1,10 @@ + <node oor:name="calc_HTML_WebQuery" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN USEOPTIONS</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/calc_HTML_WebQuery_ui.xcu b/filter/source/config/fragments/filters/calc_HTML_WebQuery_ui.xcu new file mode 100644 index 000000000000..828a356f23d9 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_HTML_WebQuery_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="calc_HTML_WebQuery"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Web Page Query (%productname% Calc)</value> + <value xml:lang="x-translate">Web Page Query (%productname% Calc)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary.xcu new file mode 100644 index 000000000000..650c0cf980fb --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary.xcu @@ -0,0 +1,10 @@ +<node oor:name="Calc MS Excel 2007 Binary" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.oox.ExcelFilter</value></prop> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"/> + <prop oor:name="Type"><value>MS Excel 2007 Binary</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary_ui.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary_ui.xcu new file mode 100644 index 000000000000..49faa3d1a849 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary_ui.xcu @@ -0,0 +1,6 @@ +<node oor:name="Calc MS Excel 2007 Binary"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 2007 Binary</value> + <value xml:lang="de">Microsoft Excel 2007 Binär</value> + </prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML.xcu new file mode 100644 index 000000000000..508927802621 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML.xcu @@ -0,0 +1,10 @@ +<node oor:name="Calc MS Excel 2007 XML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.oox.ExcelFilter</value></prop> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"/> + <prop oor:name="Type"><value>MS Excel 2007 XML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template.xcu new file mode 100644 index 000000000000..46f1eca86085 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="Calc MS Excel 2007 XML Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER TEMPLATE TEMPLATEPATH</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.oox.ExcelFilter</value></prop> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"/> + <prop oor:name="Type"><value>MS Excel 2007 XML Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template_ui.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template_ui.xcu new file mode 100644 index 000000000000..4d2019e55d2e --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template_ui.xcu @@ -0,0 +1,6 @@ +<node oor:name="Calc MS Excel 2007 XML Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 2007 XML Template</value> + <value xml:lang="de">Microsoft Excel 2007 XML Vorlage</value> + </prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_ui.xcu b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_ui.xcu new file mode 100644 index 000000000000..9a81fd99d0d6 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_ui.xcu @@ -0,0 +1,6 @@ +<node oor:name="Calc MS Excel 2007 XML"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 2007 XML</value> + <value xml:lang="de">Microsoft Excel 2007 XML</value> + </prop> +</node> diff --git a/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template.xcu b/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template.xcu new file mode 100644 index 000000000000..56e132620108 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="calc_StarOffice_XML_Calc_Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>calc_StarOffice_XML_Calc_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template_ui.xcu b/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template_ui.xcu new file mode 100644 index 000000000000..8d71de15869a --- /dev/null +++ b/filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="calc_StarOffice_XML_Calc_Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Spreadsheet Template</value> + <value xml:lang="x-translate">%productname% %formatversion% Spreadsheet Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/calc_pdf_Export.xcu b/filter/source/config/fragments/filters/calc_pdf_Export.xcu new file mode 100644 index 000000000000..c00ca73bfc47 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="calc_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/chart8.xcu b/filter/source/config/fragments/filters/chart8.xcu new file mode 100644 index 000000000000..c3700acfeb65 --- /dev/null +++ b/filter/source/config/fragments/filters/chart8.xcu @@ -0,0 +1,10 @@ + <node oor:name="chart8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT OWN DEFAULT NOTINFILEDIALOG NOTINCHOOSER ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.chart2.XMLFilter</value></prop> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>chart8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.chart2.ChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/chart8_ui.xcu b/filter/source/config/fragments/filters/chart8_ui.xcu new file mode 100644 index 000000000000..d34981fa4bc9 --- /dev/null +++ b/filter/source/config/fragments/filters/chart8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="chart8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Chart</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/dBase.xcu b/filter/source/config/fragments/filters/dBase.xcu new file mode 100644 index 000000000000..4e2939520c14 --- /dev/null +++ b/filter/source/config/fragments/filters/dBase.xcu @@ -0,0 +1,13 @@ + <node oor:name="dBase" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN USESOPTIONS</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.Calc.FilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">dBASE</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>calc_dBase</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw8.xcu b/filter/source/config/fragments/filters/draw8.xcu new file mode 100644 index 000000000000..6a1df34e4af3 --- /dev/null +++ b/filter/source/config/fragments/filters/draw8.xcu @@ -0,0 +1,10 @@ + <node oor:name="draw8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN DEFAULT PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>draw8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw8_template.xcu b/filter/source/config/fragments/filters/draw8_template.xcu new file mode 100644 index 000000000000..3f42e65f5853 --- /dev/null +++ b/filter/source/config/fragments/filters/draw8_template.xcu @@ -0,0 +1,10 @@ + <node oor:name="draw8_template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>draw8_template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw8_template_ui.xcu b/filter/source/config/fragments/filters/draw8_template_ui.xcu new file mode 100644 index 000000000000..430766aa87fe --- /dev/null +++ b/filter/source/config/fragments/filters/draw8_template_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="draw8_template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Drawing Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/draw8_ui.xcu b/filter/source/config/fragments/filters/draw8_ui.xcu new file mode 100644 index 000000000000..0852c2042470 --- /dev/null +++ b/filter/source/config/fragments/filters/draw8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="draw8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Drawing</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base.xcu b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base.xcu new file mode 100644 index 000000000000..a0878c4d3145 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_PCD_Photo_CD_Base" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCD - Kodak Photo CD (768x512)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pcd_Photo_CD_Base</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base16.xcu b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base16.xcu new file mode 100644 index 000000000000..24c17ca932e2 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base16.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_PCD_Photo_CD_Base16" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCD - Kodak Photo CD (192x128)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pcd_Photo_CD_Base16</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base4.xcu b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base4.xcu new file mode 100644 index 000000000000..699358d87b49 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base4.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_PCD_Photo_CD_Base4" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCD - Kodak Photo CD (384x256)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pcd_Photo_CD_Base4</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template.xcu b/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template.xcu new file mode 100644 index 000000000000..55f1f96a922f --- /dev/null +++ b/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="draw_StarOffice_XML_Draw_Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>draw_StarOffice_XML_Draw_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template_ui.xcu b/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template_ui.xcu new file mode 100644 index 000000000000..8121a7bb9646 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="draw_StarOffice_XML_Draw_Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Drawing Template</value> + <value xml:lang="x-translate">%productname% %formatversion% Drawing Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_bmp_Export.xcu b/filter/source/config/fragments/filters/draw_bmp_Export.xcu new file mode 100644 index 000000000000..fbfddfc06a0b --- /dev/null +++ b/filter/source/config/fragments/filters/draw_bmp_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_bmp_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">BMP - Windows Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>bmp_MS_Windows</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_emf_Export.xcu b/filter/source/config/fragments/filters/draw_emf_Export.xcu new file mode 100644 index 000000000000..c6f9d933f3f2 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_emf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_emf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EMF - Enhanced Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>emf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_eps_Export.xcu b/filter/source/config/fragments/filters/draw_eps_Export.xcu new file mode 100644 index 000000000000..9cc1eb92678e --- /dev/null +++ b/filter/source/config/fragments/filters/draw_eps_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_eps_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>eps_Encapsulated_PostScript</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_flash_Export.xcu b/filter/source/config/fragments/filters/draw_flash_Export.xcu new file mode 100644 index 000000000000..222138869266 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_flash_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_flash_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Impress.FlashExportFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Macromedia Flash (SWF)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>graphic_SWF</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_gif_Export.xcu b/filter/source/config/fragments/filters/draw_gif_Export.xcu new file mode 100644 index 000000000000..017a277030f6 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_gif_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_gif_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">GIF - Graphics Interchange Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>gif_Graphics_Interchange</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_html_Export.xcu b/filter/source/config/fragments/filters/draw_html_Export.xcu new file mode 100644 index 000000000000..04ddadb4b38e --- /dev/null +++ b/filter/source/config/fragments/filters/draw_html_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="draw_html_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.draw.SdHtmlOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>graphic_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_html_Export_ui.xcu b/filter/source/config/fragments/filters/draw_html_Export_ui.xcu new file mode 100644 index 000000000000..8c35eb96a157 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_html_Export_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="draw_html_Export"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document (%productname% Draw)</value> + <value xml:lang="x-translate">HTML Document (%productname% Draw)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_jpg_Export.xcu b/filter/source/config/fragments/filters/draw_jpg_Export.xcu new file mode 100644 index 000000000000..efa6798cf824 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_jpg_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_jpg_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>jpg_JPEG</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_met_Export.xcu b/filter/source/config/fragments/filters/draw_met_Export.xcu new file mode 100644 index 000000000000..e4b47ec8a5da --- /dev/null +++ b/filter/source/config/fragments/filters/draw_met_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_met_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MET - OS/2 Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>met_OS2_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_pbm_Export.xcu b/filter/source/config/fragments/filters/draw_pbm_Export.xcu new file mode 100644 index 000000000000..ff4a84d38548 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_pbm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_pbm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PBM - Portable Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pbm_Portable_Bitmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_pct_Export.xcu b/filter/source/config/fragments/filters/draw_pct_Export.xcu new file mode 100644 index 000000000000..2b9069694d5a --- /dev/null +++ b/filter/source/config/fragments/filters/draw_pct_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_pct_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCT - Mac Pict</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pct_Mac_Pict</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_pdf_Export.xcu b/filter/source/config/fragments/filters/draw_pdf_Export.xcu new file mode 100644 index 000000000000..23a76e6812ea --- /dev/null +++ b/filter/source/config/fragments/filters/draw_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_pgm_Export.xcu b/filter/source/config/fragments/filters/draw_pgm_Export.xcu new file mode 100644 index 000000000000..fc187599c326 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_pgm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_pgm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PGM - Portable Graymap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pgm_Portable_Graymap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_png_Export.xcu b/filter/source/config/fragments/filters/draw_png_Export.xcu new file mode 100644 index 000000000000..08c0b2ac5a26 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_png_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_png_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_ppm_Export.xcu b/filter/source/config/fragments/filters/draw_ppm_Export.xcu new file mode 100644 index 000000000000..9631ffcee666 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_ppm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_ppm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ppm_Portable_Pixelmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_ras_Export.xcu b/filter/source/config/fragments/filters/draw_ras_Export.xcu new file mode 100644 index 000000000000..4cdd9e0b9989 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_ras_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_ras_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">RAS - Sun Raster Image</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ras_Sun_Rasterfile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_svg_Export.xcu b/filter/source/config/fragments/filters/draw_svg_Export.xcu new file mode 100644 index 000000000000..6e273c555060 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_svg_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_svg_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Draw.SVGFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SVG - Scalable Vector Graphics</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>svg_Scalable_Vector_Graphics</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_svm_Export.xcu b/filter/source/config/fragments/filters/draw_svm_Export.xcu new file mode 100644 index 000000000000..29f52d67d3ae --- /dev/null +++ b/filter/source/config/fragments/filters/draw_svm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_svm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SVM - StarView Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>svm_StarView_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_tif_Export.xcu b/filter/source/config/fragments/filters/draw_tif_Export.xcu new file mode 100644 index 000000000000..0b03360bf75d --- /dev/null +++ b/filter/source/config/fragments/filters/draw_tif_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_tif_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>tif_Tag_Image_File</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_wmf_Export.xcu b/filter/source/config/fragments/filters/draw_wmf_Export.xcu new file mode 100644 index 000000000000..667b15259e92 --- /dev/null +++ b/filter/source/config/fragments/filters/draw_wmf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_wmf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WMF - Windows Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>wmf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/draw_xpm_Export.xcu b/filter/source/config/fragments/filters/draw_xpm_Export.xcu new file mode 100644 index 000000000000..18b221c6ccbf --- /dev/null +++ b/filter/source/config/fragments/filters/draw_xpm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="draw_xpm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XPM - X PixMap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>xpm_XPM</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.drawing.DrawingDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8.xcu b/filter/source/config/fragments/filters/impress8.xcu new file mode 100644 index 000000000000..099bce62d3c5 --- /dev/null +++ b/filter/source/config/fragments/filters/impress8.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN DEFAULT PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>impress8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8_draw.xcu b/filter/source/config/fragments/filters/impress8_draw.xcu new file mode 100644 index 000000000000..5781c2a3e709 --- /dev/null +++ b/filter/source/config/fragments/filters/impress8_draw.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress8_draw" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>draw8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8_draw_ui.xcu b/filter/source/config/fragments/filters/impress8_draw_ui.xcu new file mode 100644 index 000000000000..2ba1fcbd2a7f --- /dev/null +++ b/filter/source/config/fragments/filters/impress8_draw_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="impress8_draw"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Drawing (Impress)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8_template.xcu b/filter/source/config/fragments/filters/impress8_template.xcu new file mode 100644 index 000000000000..891f8f86b0c4 --- /dev/null +++ b/filter/source/config/fragments/filters/impress8_template.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress8_template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>impress8_template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8_template_ui.xcu b/filter/source/config/fragments/filters/impress8_template_ui.xcu new file mode 100644 index 000000000000..d8b3d4d68fc3 --- /dev/null +++ b/filter/source/config/fragments/filters/impress8_template_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="impress8_template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Presentation Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress8_ui.xcu b/filter/source/config/fragments/filters/impress8_ui.xcu new file mode 100644 index 000000000000..3ac78f8d88b2 --- /dev/null +++ b/filter/source/config/fragments/filters/impress8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="impress8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Presentation</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML.xcu b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML.xcu new file mode 100644 index 000000000000..7fdcbd702a54 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML.xcu @@ -0,0 +1,10 @@ +<node oor:name="Impress MS PowerPoint 2007 XML" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Impress.oox.PowerPointImport</value></prop> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"/> + <prop oor:name="Type"><value>MS PowerPoint 2007 XML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template.xcu b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template.xcu new file mode 100644 index 000000000000..4fad96fc0521 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="Impress MS PowerPoint 2007 XML Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER TEMPLATE TEMPLATEPATH PREFERRED</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Impress.oox.PowerPointImport</value></prop> + <prop oor:name="UserData"/> + <prop oor:name="FileFormatVersion"/> + <prop oor:name="Type"><value>MS PowerPoint 2007 XML Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> +</node> diff --git a/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template_ui.xcu b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template_ui.xcu new file mode 100644 index 000000000000..24f2d3889b59 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template_ui.xcu @@ -0,0 +1,6 @@ +<node oor:name="Impress MS PowerPoint 2007 XML Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft PowerPoint 2007 XML Template</value> + <value xml:lang="de">Microsoft PowerPoint 2007 XML Vorlage</value> + </prop> +</node> diff --git a/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_ui.xcu b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_ui.xcu new file mode 100644 index 000000000000..1a6b220a0681 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_ui.xcu @@ -0,0 +1,6 @@ +<node oor:name="Impress MS PowerPoint 2007 XML"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft PowerPoint 2007 XML</value> + <value xml:lang="de">Microsoft PowerPoint 2007 XML</value> + </prop> +</node> diff --git a/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw.xcu b/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw.xcu new file mode 100644 index 000000000000..225843c661b7 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress_StarOffice_XML_Draw" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>XML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>draw_StarOffice_XML_Draw</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw_ui.xcu b/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw_ui.xcu new file mode 100644 index 000000000000..a0df30be38be --- /dev/null +++ b/filter/source/config/fragments/filters/impress_StarOffice_XML_Draw_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="impress_StarOffice_XML_Draw"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Drawing (%productname% Impress)</value> + <value xml:lang="x-translate">%productname% %formatversion% Drawing (%productname% Impress)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template.xcu b/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template.xcu new file mode 100644 index 000000000000..472dcf16130a --- /dev/null +++ b/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress_StarOffice_XML_Impress_Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>impress_StarOffice_XML_Impress_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template_ui.xcu b/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template_ui.xcu new file mode 100644 index 000000000000..24392c0d66dc --- /dev/null +++ b/filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="impress_StarOffice_XML_Impress_Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Presentation Template</value> + <value xml:lang="x-translate">%productname% %formatversion% Presentation Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_bmp_Export.xcu b/filter/source/config/fragments/filters/impress_bmp_Export.xcu new file mode 100644 index 000000000000..74c632cfd910 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_bmp_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_bmp_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">BMP - Windows Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>bmp_MS_Windows</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_emf_Export.xcu b/filter/source/config/fragments/filters/impress_emf_Export.xcu new file mode 100644 index 000000000000..02b575420aba --- /dev/null +++ b/filter/source/config/fragments/filters/impress_emf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_emf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EMF - Enhanced Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>emf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_eps_Export.xcu b/filter/source/config/fragments/filters/impress_eps_Export.xcu new file mode 100644 index 000000000000..a1c7f3694a6f --- /dev/null +++ b/filter/source/config/fragments/filters/impress_eps_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_eps_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>eps_Encapsulated_PostScript</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_flash_Export.xcu b/filter/source/config/fragments/filters/impress_flash_Export.xcu new file mode 100644 index 000000000000..51fa2e39e765 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_flash_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_flash_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Impress.FlashExportFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Macromedia Flash (SWF)</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>graphic_SWF</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_gif_Export.xcu b/filter/source/config/fragments/filters/impress_gif_Export.xcu new file mode 100644 index 000000000000..3d65c2d165b4 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_gif_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_gif_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">GIF - Graphics Interchange Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>gif_Graphics_Interchange</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_html_Export.xcu b/filter/source/config/fragments/filters/impress_html_Export.xcu new file mode 100644 index 000000000000..60de237501b8 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_html_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="impress_html_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.draw.SdHtmlOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>graphic_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_html_Export_ui.xcu b/filter/source/config/fragments/filters/impress_html_Export_ui.xcu new file mode 100644 index 000000000000..d7392eb427f6 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_html_Export_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="impress_html_Export"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document (%productname% Impress)</value> + <value xml:lang="x-translate">HTML Document (%productname% Impress)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_jpg_Export.xcu b/filter/source/config/fragments/filters/impress_jpg_Export.xcu new file mode 100644 index 000000000000..3fca1776b2a9 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_jpg_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_jpg_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>jpg_JPEG</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_met_Export.xcu b/filter/source/config/fragments/filters/impress_met_Export.xcu new file mode 100644 index 000000000000..d144158465b7 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_met_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_met_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">MET - OS/2 Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>met_OS2_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_pbm_Export.xcu b/filter/source/config/fragments/filters/impress_pbm_Export.xcu new file mode 100644 index 000000000000..bf6dd89de38e --- /dev/null +++ b/filter/source/config/fragments/filters/impress_pbm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_pbm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PBM - Portable Bitmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pbm_Portable_Bitmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_pct_Export.xcu b/filter/source/config/fragments/filters/impress_pct_Export.xcu new file mode 100644 index 000000000000..46f44610437e --- /dev/null +++ b/filter/source/config/fragments/filters/impress_pct_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_pct_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PCT - Mac Pict</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pct_Mac_Pict</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_pdf_Export.xcu b/filter/source/config/fragments/filters/impress_pdf_Export.xcu new file mode 100644 index 000000000000..deadf1d35291 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_pgm_Export.xcu b/filter/source/config/fragments/filters/impress_pgm_Export.xcu new file mode 100644 index 000000000000..e14eda40af44 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_pgm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_pgm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PGM - Portable Graymap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pgm_Portable_Graymap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_png_Export.xcu b/filter/source/config/fragments/filters/impress_png_Export.xcu new file mode 100644 index 000000000000..e836c6fb0ede --- /dev/null +++ b/filter/source/config/fragments/filters/impress_png_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_png_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_ppm_Export.xcu b/filter/source/config/fragments/filters/impress_ppm_Export.xcu new file mode 100644 index 000000000000..27c970e32f54 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_ppm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_ppm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ppm_Portable_Pixelmap</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_ras_Export.xcu b/filter/source/config/fragments/filters/impress_ras_Export.xcu new file mode 100644 index 000000000000..c3327e8d1b5a --- /dev/null +++ b/filter/source/config/fragments/filters/impress_ras_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_ras_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">RAS - Sun Raster Image</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>ras_Sun_Rasterfile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_svg_Export.xcu b/filter/source/config/fragments/filters/impress_svg_Export.xcu new file mode 100644 index 000000000000..44efb45bcea4 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_svg_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_svg_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Draw.SVGFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SVG - Scalable Vector Graphics</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>svg_Scalable_Vector_Graphics</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_svm_Export.xcu b/filter/source/config/fragments/filters/impress_svm_Export.xcu new file mode 100644 index 000000000000..6bfcd9711ca8 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_svm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_svm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">SVM - StarView Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>svm_StarView_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_tif_Export.xcu b/filter/source/config/fragments/filters/impress_tif_Export.xcu new file mode 100644 index 000000000000..f4b76ab8f193 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_tif_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_tif_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>tif_Tag_Image_File</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_wmf_Export.xcu b/filter/source/config/fragments/filters/impress_wmf_Export.xcu new file mode 100644 index 000000000000..18864e015375 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_wmf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_wmf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">WMF - Windows Metafile</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>wmf_MS_Windows_Metafile</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/impress_xpm_Export.xcu b/filter/source/config/fragments/filters/impress_xpm_Export.xcu new file mode 100644 index 000000000000..0a83d3e853f1 --- /dev/null +++ b/filter/source/config/fragments/filters/impress_xpm_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="impress_xpm_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN SUPPORTSSELECTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">XPM - X PixMap</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>xpm_XPM</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/makefile.mk b/filter/source/config/fragments/filters/makefile.mk new file mode 100644 index 000000000000..2c557906df29 --- /dev/null +++ b/filter/source/config/fragments/filters/makefile.mk @@ -0,0 +1,57 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ = ..$/..$/..$/.. +TARGET = FCFGPkgFilters +PRJNAME = filter + +# ----------------------------------------------------------------------------- +# include global settings +# ----------------------------------------------------------------------------- + +.INCLUDE: settings.mk + +# ----------------------------------------------------------------------------- +# include all package definition files +# ----------------------------------------------------------------------------- + +.INCLUDE: ..$/packagedef.mk + +.INCLUDE: target.mk + +ALLTAR: $(ALL_UI_FILTERS) + +.IF "$(WITH_LANG)"!="" +$(DIR_LOCFRAG)$/filters$/%.xcu : %.xcu + -$(MKDIRHIER) $(@:d) + $(WRAPCMD) $(CFGEX) -p $(PRJNAME) -i $(@:f) -o $@ -m $(LOCALIZESDF) -l all + +.IF "$(ALL_UI_FILTERS)"!="" +$(ALL_UI_FILTERS) : $(LOCALIZESDF) +.ENDIF # "$(ALL_UI_FILTERS)"!="" + +.ENDIF # "$(WITH_LANG)"!="" diff --git a/filter/source/config/fragments/filters/math8.xcu b/filter/source/config/fragments/filters/math8.xcu new file mode 100644 index 000000000000..94c86a96cf83 --- /dev/null +++ b/filter/source/config/fragments/filters/math8.xcu @@ -0,0 +1,10 @@ + <node oor:name="math8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN DEFAULT ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>math8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/math8_ui.xcu b/filter/source/config/fragments/filters/math8_ui.xcu new file mode 100644 index 000000000000..c892495fca90 --- /dev/null +++ b/filter/source/config/fragments/filters/math8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="math8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Formula</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/math_pdf_Export.xcu b/filter/source/config/fragments/filters/math_pdf_Export.xcu new file mode 100644 index 000000000000..844714fbc5ec --- /dev/null +++ b/filter/source/config/fragments/filters/math_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="math_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.formula.FormulaProperties</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/placeware_Export.xcu b/filter/source/config/fragments/filters/placeware_Export.xcu new file mode 100644 index 000000000000..a9c9a655acbb --- /dev/null +++ b/filter/source/config/fragments/filters/placeware_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="placeware_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.star.comp.Impress.PlaceWareExportFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PWP - PlaceWare</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pwp_PlaceWare</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.presentation.PresentationDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer8.xcu b/filter/source/config/fragments/filters/writer8.xcu new file mode 100644 index 000000000000..bcfd55640e79 --- /dev/null +++ b/filter/source/config/fragments/filters/writer8.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN DEFAULT PREFERRED ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writer8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer8_template.xcu b/filter/source/config/fragments/filters/writer8_template.xcu new file mode 100644 index 000000000000..34ee8055113c --- /dev/null +++ b/filter/source/config/fragments/filters/writer8_template.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer8_template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writer8_template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer8_template_ui.xcu b/filter/source/config/fragments/filters/writer8_template_ui.xcu new file mode 100644 index 000000000000..05a5a32ac134 --- /dev/null +++ b/filter/source/config/fragments/filters/writer8_template_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writer8_template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Text Document Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer8_ui.xcu b/filter/source/config/fragments/filters/writer8_ui.xcu new file mode 100644 index 000000000000..e70d69b759d1 --- /dev/null +++ b/filter/source/config/fragments/filters/writer8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writer8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Text Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_MIZI_Hwp_97.xcu b/filter/source/config/fragments/filters/writer_MIZI_Hwp_97.xcu new file mode 100644 index 000000000000..01a305bb7eec --- /dev/null +++ b/filter/source/config/fragments/filters/writer_MIZI_Hwp_97.xcu @@ -0,0 +1,13 @@ + <node oor:name="writer_MIZI_Hwp_97" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"><value>com.sun.comp.hwpimport.HwpImportFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Hangul WP 97</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_MIZI_Hwp_97</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template.xcu b/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template.xcu new file mode 100644 index 000000000000..9c54cf04e06b --- /dev/null +++ b/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer_StarOffice_XML_Writer_Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLV</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_StarOffice_XML_Writer_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template_ui.xcu b/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template_ui.xcu new file mode 100644 index 000000000000..f15981efe33d --- /dev/null +++ b/filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="writer_StarOffice_XML_Writer_Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Text Document Template</value> + <value xml:lang="x-translate">%productname% %formatversion% Text Document Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer.xcu b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer.xcu new file mode 100644 index 000000000000..b1210080e631 --- /dev/null +++ b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer_globaldocument_StarOffice_XML_Writer" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_StarOffice_XML_Writer</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu new file mode 100644 index 000000000000..2dfb7fe0d21e --- /dev/null +++ b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer_globaldocument_StarOffice_XML_Writer_GlobalDocument" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN ALIEN PREFERRED ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_globaldocument_StarOffice_XML_Writer_GlobalDocument</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument_ui.xcu b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument_ui.xcu new file mode 100644 index 000000000000..28e9b4082a7a --- /dev/null +++ b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="writer_globaldocument_StarOffice_XML_Writer_GlobalDocument"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Master Document</value> + <value xml:lang="x-translate">%productname% %formatversion% Master Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_ui.xcu b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_ui.xcu new file mode 100644 index 000000000000..216e70c0ed1e --- /dev/null +++ b/filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="writer_globaldocument_StarOffice_XML_Writer"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Text Document</value> + <value xml:lang="x-translate">%productname% %formatversion% Text Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_globaldocument_pdf_Export.xcu b/filter/source/config/fragments/filters/writer_globaldocument_pdf_Export.xcu new file mode 100644 index 000000000000..cddd4936a50d --- /dev/null +++ b/filter/source/config/fragments/filters/writer_globaldocument_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="writer_globaldocument_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_pdf_Export.xcu b/filter/source/config/fragments/filters/writer_pdf_Export.xcu new file mode 100644 index 000000000000..ca3e63d3b887 --- /dev/null +++ b/filter/source/config/fragments/filters/writer_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="writer_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_HTML_help.xcu b/filter/source/config/fragments/filters/writer_web_HTML_help.xcu new file mode 100644 index 000000000000..e03632542233 --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_HTML_help.xcu @@ -0,0 +1,13 @@ + <node oor:name="writer_web_HTML_help" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT INTERNAL NOTINFILEDIALOG NOTINCHOOSER ASYNCHRON READONLY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>HTML_HELP</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">Help content</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML_help</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer.xcu b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer.xcu new file mode 100644 index 000000000000..8e217e6d79a8 --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer_web_StarOffice_XML_Writer" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_StarOffice_XML_Writer</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template.xcu b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template.xcu new file mode 100644 index 000000000000..64b3b8cdfe81 --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template.xcu @@ -0,0 +1,10 @@ + <node oor:name="writer_web_StarOffice_XML_Writer_Web_Template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ALIEN ENCRYPTION</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLVWEB</value></prop> + <prop oor:name="FileFormatVersion"><value>6200</value></prop> + <prop oor:name="Type"><value>writer_web_StarOffice_XML_Writer_Web_Template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template_ui.xcu b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template_ui.xcu new file mode 100644 index 000000000000..b02aaf02d50b --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="writer_web_StarOffice_XML_Writer_Web_Template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% HTML Template</value> + <value xml:lang="x-translate">%productname% %formatversion% HTML Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_ui.xcu b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_ui.xcu new file mode 100644 index 000000000000..e7e65247c4bf --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_ui.xcu @@ -0,0 +1,6 @@ + <node oor:name="writer_web_StarOffice_XML_Writer"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% %formatversion% Text Document (%productname% Writer/Web)</value> + <value xml:lang="x-translate">%productname% %formatversion% Text Document (%productname% Writer/Web)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writer_web_pdf_Export.xcu b/filter/source/config/fragments/filters/writer_web_pdf_Export.xcu new file mode 100644 index 000000000000..6cdedd21eaed --- /dev/null +++ b/filter/source/config/fragments/filters/writer_web_pdf_Export.xcu @@ -0,0 +1,13 @@ + <node oor:name="writer_web_pdf_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.PDF.PDFDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.PDF.PDFFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">PDF - Portable Document Format</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>pdf_Portable_Document_Format</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writerglobal8.xcu b/filter/source/config/fragments/filters/writerglobal8.xcu new file mode 100644 index 000000000000..df5fcb7e6d1b --- /dev/null +++ b/filter/source/config/fragments/filters/writerglobal8.xcu @@ -0,0 +1,10 @@ + <node oor:name="writerglobal8" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE OWN PREFERRED ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writerglobal8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writerglobal8_HTML.xcu b/filter/source/config/fragments/filters/writerglobal8_HTML.xcu new file mode 100644 index 000000000000..65bfdb5ab0a9 --- /dev/null +++ b/filter/source/config/fragments/filters/writerglobal8_HTML.xcu @@ -0,0 +1,13 @@ + <node oor:name="writerglobal8_HTML" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN ASYNCHRON NOTINCHOOSER</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>HTML</value></prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>writer_web_HTML</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value xml:lang="x-default">HTML (Writer/Global)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writerglobal8_ui.xcu b/filter/source/config/fragments/filters/writerglobal8_ui.xcu new file mode 100644 index 000000000000..1a0d5a41bd51 --- /dev/null +++ b/filter/source/config/fragments/filters/writerglobal8_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writerglobal8"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Master Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writerglobal8_writer.xcu b/filter/source/config/fragments/filters/writerglobal8_writer.xcu new file mode 100644 index 000000000000..ca3794de493b --- /dev/null +++ b/filter/source/config/fragments/filters/writerglobal8_writer.xcu @@ -0,0 +1,10 @@ + <node oor:name="writerglobal8_writer" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE DEFAULT ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writer8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.GlobalDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writerglobal8_writer_ui.xcu b/filter/source/config/fragments/filters/writerglobal8_writer_ui.xcu new file mode 100644 index 000000000000..ee04bbd2a547 --- /dev/null +++ b/filter/source/config/fragments/filters/writerglobal8_writer_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writerglobal8_writer"> + <prop oor:name="UIName"> + <value xml:lang="en-US">ODF Text Document</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writerweb8_writer.xcu b/filter/source/config/fragments/filters/writerweb8_writer.xcu new file mode 100644 index 000000000000..a3fbc783e92a --- /dev/null +++ b/filter/source/config/fragments/filters/writerweb8_writer.xcu @@ -0,0 +1,10 @@ + <node oor:name="writerweb8_writer" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT TEMPLATE ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXML</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writer8</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writerweb8_writer_template.xcu b/filter/source/config/fragments/filters/writerweb8_writer_template.xcu new file mode 100644 index 000000000000..eb383eafaeeb --- /dev/null +++ b/filter/source/config/fragments/filters/writerweb8_writer_template.xcu @@ -0,0 +1,10 @@ + <node oor:name="writerweb8_writer_template" oor:op="replace"> + <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE TEMPLATEPATH OWN ENCRYPTION PASSWORDTOMODIFY</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="FilterService"/> + <prop oor:name="UserData"><value>CXMLVWEB</value></prop> + <prop oor:name="FileFormatVersion"><value>6800</value></prop> + <prop oor:name="Type"><value>writerweb8_writer_template</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.text.WebDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/filters/writerweb8_writer_template_ui.xcu b/filter/source/config/fragments/filters/writerweb8_writer_template_ui.xcu new file mode 100644 index 000000000000..9ff5d088d15b --- /dev/null +++ b/filter/source/config/fragments/filters/writerweb8_writer_template_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writerweb8_writer_template"> + <prop oor:name="UIName"> + <value xml:lang="en-US">HTML Document Template</value> + </prop> + </node> diff --git a/filter/source/config/fragments/filters/writerweb8_writer_ui.xcu b/filter/source/config/fragments/filters/writerweb8_writer_ui.xcu new file mode 100644 index 000000000000..8b823ceeca70 --- /dev/null +++ b/filter/source/config/fragments/filters/writerweb8_writer_ui.xcu @@ -0,0 +1,5 @@ + <node oor:name="writerweb8_writer"> + <prop oor:name="UIName"> + <value xml:lang="en-US">%productname% Text (%productname% Writer/Web)</value> + </prop> + </node> diff --git a/filter/source/config/fragments/frameloaders/com_sun_star_comp_chart2_ChartFrameLoader.xcu b/filter/source/config/fragments/frameloaders/com_sun_star_comp_chart2_ChartFrameLoader.xcu new file mode 100644 index 000000000000..2f315761a296 --- /dev/null +++ b/filter/source/config/fragments/frameloaders/com_sun_star_comp_chart2_ChartFrameLoader.xcu @@ -0,0 +1,3 @@ + <node oor:name="com.sun.star.comp.chart2.ChartFrameLoader" oor:op="replace" oor:finalized="true" oor:mandatory="true"> + <prop oor:name="Types"><value>chart_StarOffice_XML_Chart chart8 chart_StarChart_50 chart_StarChart_40 chart_StarChart_30</value></prop> + </node> diff --git a/filter/source/config/fragments/frameloaders/com_sun_star_frame_Bibliography.xcu b/filter/source/config/fragments/frameloaders/com_sun_star_frame_Bibliography.xcu new file mode 100644 index 000000000000..25fa8762f29d --- /dev/null +++ b/filter/source/config/fragments/frameloaders/com_sun_star_frame_Bibliography.xcu @@ -0,0 +1,3 @@ + <node oor:name="com.sun.star.frame.Bibliography" oor:op="replace" > + <prop oor:name="Types"><value>component_Bibliography</value></prop> + </node> diff --git a/filter/source/config/fragments/frameloaders/com_sun_star_sdb_ContentLoader.xcu b/filter/source/config/fragments/frameloaders/com_sun_star_sdb_ContentLoader.xcu new file mode 100644 index 000000000000..cd5bb4684827 --- /dev/null +++ b/filter/source/config/fragments/frameloaders/com_sun_star_sdb_ContentLoader.xcu @@ -0,0 +1,3 @@ + <node oor:name="com.sun.star.sdb.ContentLoader" oor:op="replace" > + <prop oor:name="Types"><value>component_DB</value></prop> + </node> diff --git a/filter/source/config/fragments/frameloaders/org_openoffice_comp_dbflt_DBContentLoader2.xcu b/filter/source/config/fragments/frameloaders/org_openoffice_comp_dbflt_DBContentLoader2.xcu new file mode 100644 index 000000000000..299a907fb576 --- /dev/null +++ b/filter/source/config/fragments/frameloaders/org_openoffice_comp_dbflt_DBContentLoader2.xcu @@ -0,0 +1,3 @@ + <node oor:name="org.openoffice.comp.dbflt.DBContentLoader2" oor:op="replace"> + <prop oor:name="Types"><value>StarBase</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/bmp_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/bmp_Export.xcu new file mode 100644 index 000000000000..ea5d9f14bebe --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/bmp_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="bmp_Export" oor:op="replace" > + <prop oor:name="Type"><value>bmp_MS_Windows</value></prop> + <prop oor:name="FormatName"><value>SVBMP</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">BMP - Windows Bitmap</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/bmp_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/bmp_Import.xcu new file mode 100644 index 000000000000..32a213efa594 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/bmp_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="bmp_Import" oor:op="replace" > + <prop oor:name="Type"><value>bmp_MS_Windows</value></prop> + <prop oor:name="FormatName"><value>SVBMP</value></prop> + <prop oor:name="RealFilterName"><value>BMP - MS Windows</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">BMP - Windows Bitmap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/dxf_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/dxf_Import.xcu new file mode 100644 index 000000000000..b132f3c59df6 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/dxf_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="dxf_Import" oor:op="replace" > + <prop oor:name="Type"><value>dxf_AutoCAD_Interchange</value></prop> + <prop oor:name="FormatName"><value>idx</value></prop> + <prop oor:name="RealFilterName"><value>DXF - AutoCAD Interchange</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">DXF - AutoCAD Interchange Format</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/emf_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/emf_Export.xcu new file mode 100644 index 000000000000..4a82c5080ad4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/emf_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="emf_Export" oor:op="replace" > + <prop oor:name="Type"><value>emf_MS_Windows_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVEMF</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">EMF - Enhanced Metafile</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/emf_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/emf_Import.xcu new file mode 100644 index 000000000000..f84aab35b0da --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/emf_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="emf_Import" oor:op="replace" > + <prop oor:name="Type"><value>emf_MS_Windows_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVEMF</value></prop> + <prop oor:name="RealFilterName"><value>EMF - MS Windows Metafile</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">EMF - Enhanced Metafile</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/eps_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/eps_Export.xcu new file mode 100644 index 000000000000..ed08ed2bc783 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/eps_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="eps_Export" oor:op="replace" > + <prop oor:name="Type"><value>eps_Encapsulated_PostScript</value></prop> + <prop oor:name="FormatName"><value>eps</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/eps_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/eps_Import.xcu new file mode 100644 index 000000000000..7fcd90b66481 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/eps_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="eps_Import" oor:op="replace" > + <prop oor:name="Type"><value>eps_Encapsulated_PostScript</value></prop> + <prop oor:name="FormatName"><value>ips</value></prop> + <prop oor:name="RealFilterName"><value>EPS - Encapsulated PostScript</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/gif_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/gif_Export.xcu new file mode 100644 index 000000000000..08d82e808fb4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/gif_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="gif_Export" oor:op="replace" > + <prop oor:name="Type"><value>gif_Graphics_Interchange</value></prop> + <prop oor:name="FormatName"><value>egi</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">GIF - Graphics Interchange Format</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/gif_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/gif_Import.xcu new file mode 100644 index 000000000000..5c1b34ffcbfa --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/gif_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="gif_Import" oor:op="replace" > + <prop oor:name="Type"><value>gif_Graphics_Interchange</value></prop> + <prop oor:name="FormatName"><value>SVIGIF</value></prop> + <prop oor:name="RealFilterName"><value>GIF - Graphics Interchange</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">GIF - Graphics Interchange Format</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/jpg_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/jpg_Export.xcu new file mode 100644 index 000000000000..36e53e14a7ad --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/jpg_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="jpg_Export" oor:op="replace" > + <prop oor:name="Type"><value>jpg_JPEG</value></prop> + <prop oor:name="FormatName"><value>SVEJPEG</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/jpg_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/jpg_Import.xcu new file mode 100644 index 000000000000..2f4482c90a3b --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/jpg_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="jpg_Import" oor:op="replace" > + <prop oor:name="Type"><value>jpg_JPEG</value></prop> + <prop oor:name="FormatName"><value>SVIJPEG</value></prop> + <prop oor:name="RealFilterName"><value>JPG - JPEG</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/met_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/met_Export.xcu new file mode 100644 index 000000000000..95afe373b91a --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/met_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="met_Export" oor:op="replace" > + <prop oor:name="Type"><value>met_OS2_Metafile</value></prop> + <prop oor:name="FormatName"><value>eme</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">MET - OS/2 Metafile</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/met_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/met_Import.xcu new file mode 100644 index 000000000000..c1084e53e812 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/met_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="met_Import" oor:op="replace" > + <prop oor:name="Type"><value>met_OS2_Metafile</value></prop> + <prop oor:name="FormatName"><value>ime</value></prop> + <prop oor:name="RealFilterName"><value>MET - OS/2 Metafile</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">MET - OS/2 Metafile</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pbm_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/pbm_Export.xcu new file mode 100644 index 000000000000..62e728d7b268 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pbm_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="pbm_Export" oor:op="replace" > + <prop oor:name="Type"><value>pbm_Portable_Bitmap</value></prop> + <prop oor:name="FormatName"><value>epb</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PBM - Portable Bitmap</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pbm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/pbm_Import.xcu new file mode 100644 index 000000000000..62736e4b8351 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pbm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="pbm_Import" oor:op="replace" > + <prop oor:name="Type"><value>pbm_Portable_Bitmap</value></prop> + <prop oor:name="FormatName"><value>ipb</value></prop> + <prop oor:name="RealFilterName"><value>PBM - Portable Bitmap</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PBM - Portable Bitmap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base.xcu b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base.xcu new file mode 100644 index 000000000000..5f240c1e24bc --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base.xcu @@ -0,0 +1,10 @@ + <node oor:name="pcd_Import_Base" oor:op="replace" > + <prop oor:name="Type"><value>pcd_Photo_CD_Base</value></prop> + <prop oor:name="FormatName"><value>icd</value></prop> + <prop oor:name="RealFilterName"><value>draw_PCD_Photo_CD_Base</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCD - Kodak Photo CD (768x512)</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base16.xcu b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base16.xcu new file mode 100644 index 000000000000..64625f1c391c --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base16.xcu @@ -0,0 +1,10 @@ + <node oor:name="pcd_Import_Base16" oor:op="replace" > + <prop oor:name="Type"><value>pcd_Photo_CD_Base16</value></prop> + <prop oor:name="FormatName"><value>icd</value></prop> + <prop oor:name="RealFilterName"><value>draw_PCD_Photo_CD_Base16</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCD - Kodak Photo CD (192x128)</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base4.xcu b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base4.xcu new file mode 100644 index 000000000000..927d1ad54fc5 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base4.xcu @@ -0,0 +1,10 @@ + <node oor:name="pcd_Import_Base4" oor:op="replace" > + <prop oor:name="Type"><value>pcd_Photo_CD_Base4</value></prop> + <prop oor:name="FormatName"><value>icd</value></prop> + <prop oor:name="RealFilterName"><value>draw_PCD_Photo_CD_Base4</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCD - Kodak Photo CD (384x256)</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pct_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/pct_Export.xcu new file mode 100644 index 000000000000..6dcae82e07d4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pct_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="pct_Export" oor:op="replace" > + <prop oor:name="Type"><value>pct_Mac_Pict</value></prop> + <prop oor:name="FormatName"><value>ept</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCT - Mac Pict</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pct_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/pct_Import.xcu new file mode 100644 index 000000000000..b8fc4175d895 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pct_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="pct_Import" oor:op="replace" > + <prop oor:name="Type"><value>pct_Mac_Pict</value></prop> + <prop oor:name="FormatName"><value>ipt</value></prop> + <prop oor:name="RealFilterName"><value>PCT - Mac Pict</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCT - Mac Pict</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pcx_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/pcx_Import.xcu new file mode 100644 index 000000000000..7fa5dac0345a --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pcx_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="pcx_Import" oor:op="replace" > + <prop oor:name="Type"><value>pcx_Zsoft_Paintbrush</value></prop> + <prop oor:name="FormatName"><value>ipx</value></prop> + <prop oor:name="RealFilterName"><value>PCX - Zsoft Paintbrush</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PCX - Zsoft Paintbrush</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pgm_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/pgm_Export.xcu new file mode 100644 index 000000000000..21628d9c1b02 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pgm_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="pgm_Export" oor:op="replace" > + <prop oor:name="Type"><value>pgm_Portable_Graymap</value></prop> + <prop oor:name="FormatName"><value>epg</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PGM - Portable Graymap</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/pgm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/pgm_Import.xcu new file mode 100644 index 000000000000..45cc3a83cea4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/pgm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="pgm_Import" oor:op="replace" > + <prop oor:name="Type"><value>pgm_Portable_Graymap</value></prop> + <prop oor:name="FormatName"><value>ipb</value></prop> + <prop oor:name="RealFilterName"><value>PGM - Portable Graymap</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PGM - Portable Graymap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/png_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/png_Export.xcu new file mode 100644 index 000000000000..abafad770e3a --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/png_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="png_Export" oor:op="replace" > + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="FormatName"><value>SVEPNG</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/png_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/png_Import.xcu new file mode 100644 index 000000000000..5979e7857f28 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/png_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="png_Import" oor:op="replace" > + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="FormatName"><value>SVIPNG</value></prop> + <prop oor:name="RealFilterName"><value>PNG - Portable Network Graphic</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/ppm_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/ppm_Export.xcu new file mode 100644 index 000000000000..2d7a18c34e3f --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/ppm_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="ppm_Export" oor:op="replace" > + <prop oor:name="Type"><value>ppm_Portable_Pixelmap</value></prop> + <prop oor:name="FormatName"><value>epp</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/ppm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/ppm_Import.xcu new file mode 100644 index 000000000000..2d4792b7b7b5 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/ppm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="ppm_Import" oor:op="replace" > + <prop oor:name="Type"><value>ppm_Portable_Pixelmap</value></prop> + <prop oor:name="FormatName"><value>ipb</value></prop> + <prop oor:name="RealFilterName"><value>PPM - Portable Pixelmap</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/psd_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/psd_Import.xcu new file mode 100644 index 000000000000..cbfc6e4710e7 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/psd_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="psd_Import" oor:op="replace" > + <prop oor:name="Type"><value>psd_Adobe_Photoshop</value></prop> + <prop oor:name="FormatName"><value>ipd</value></prop> + <prop oor:name="RealFilterName"><value>PSD - Adobe Photoshop</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">PSD - Adobe Photoshop</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/ras_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/ras_Export.xcu new file mode 100644 index 000000000000..aabae28a10c4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/ras_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="ras_Export" oor:op="replace" > + <prop oor:name="Type"><value>ras_Sun_Rasterfile</value></prop> + <prop oor:name="FormatName"><value>era</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">RAS - Sun Raster Image</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/ras_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/ras_Import.xcu new file mode 100644 index 000000000000..ce30b3c2f00f --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/ras_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="ras_Import" oor:op="replace" > + <prop oor:name="Type"><value>ras_Sun_Rasterfile</value></prop> + <prop oor:name="FormatName"><value>ira</value></prop> + <prop oor:name="RealFilterName"><value>RAS - Sun Rasterfile</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">RAS - Sun Raster Image</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/sgf_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/sgf_Import.xcu new file mode 100644 index 000000000000..29da3f9f9165 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/sgf_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="sgf_Import" oor:op="replace" > + <prop oor:name="Type"><value>sgf_StarOffice_Writer_SGF</value></prop> + <prop oor:name="FormatName"><value>SVSGF</value></prop> + <prop oor:name="RealFilterName"><value>SGF - StarOffice Writer SGF</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">SGF - StarWriter Graphics Format</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/sgv_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/sgv_Import.xcu new file mode 100644 index 000000000000..cc40a3815769 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/sgv_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="sgv_Import" oor:op="replace" > + <prop oor:name="Type"><value>sgv_StarDraw_20</value></prop> + <prop oor:name="FormatName"><value>SVSGV</value></prop> + <prop oor:name="RealFilterName"><value>SGV - StarDraw 2.0</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">SGV - StarDraw 2.0</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/svg_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/svg_Export.xcu new file mode 100644 index 000000000000..72653869a68d --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/svg_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="svg_Export" oor:op="replace" > + <prop oor:name="Type"><value>svg_Scalable_Vector_Graphics</value></prop> + <prop oor:name="FormatName"><value>SVESVG</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">SVG - Scalable Vector Graphics</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/svm_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/svm_Export.xcu new file mode 100644 index 000000000000..d6b55e8bf169 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/svm_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="svm_Export" oor:op="replace" > + <prop oor:name="Type"><value>svm_StarView_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVMETAFILE</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">SVM - StarView Metafile</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/svm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/svm_Import.xcu new file mode 100644 index 000000000000..8a291265710b --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/svm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="svm_Import" oor:op="replace" > + <prop oor:name="Type"><value>svm_StarView_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVMETAFILE</value></prop> + <prop oor:name="RealFilterName"><value>SVM - StarView Metafile</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">SVM - StarView Metafile</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/tga_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/tga_Import.xcu new file mode 100644 index 000000000000..af3db9b3c8fc --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/tga_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="tga_Import" oor:op="replace" > + <prop oor:name="Type"><value>tga_Truevision_TARGA</value></prop> + <prop oor:name="FormatName"><value>itg</value></prop> + <prop oor:name="RealFilterName"><value>TGA - Truevision TARGA</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">TGA - Truevision Targa</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/tif_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/tif_Export.xcu new file mode 100644 index 000000000000..a7d39ebdc8a4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/tif_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="tif_Export" oor:op="replace" > + <prop oor:name="Type"><value>tif_Tag_Image_File</value></prop> + <prop oor:name="FormatName"><value>eti</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/tif_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/tif_Import.xcu new file mode 100644 index 000000000000..2737128acf05 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/tif_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="tif_Import" oor:op="replace" > + <prop oor:name="Type"><value>tif_Tag_Image_File</value></prop> + <prop oor:name="FormatName"><value>iti</value></prop> + <prop oor:name="RealFilterName"><value>TIF - Tag Image File</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/wmf_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/wmf_Export.xcu new file mode 100644 index 000000000000..0a97f23b4875 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/wmf_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="wmf_Export" oor:op="replace" > + <prop oor:name="Type"><value>wmf_MS_Windows_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVWMF</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"><value>com.sun.star.svtools.SvFilterOptionsDialog</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">WMF - Windows Metafile</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/wmf_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/wmf_Import.xcu new file mode 100644 index 000000000000..313221f4edc4 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/wmf_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="wmf_Import" oor:op="replace" > + <prop oor:name="Type"><value>wmf_MS_Windows_Metafile</value></prop> + <prop oor:name="FormatName"><value>SVWMF</value></prop> + <prop oor:name="RealFilterName"><value>WMF - MS Windows Metafile</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">WMF - Windows Metafile</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/xbm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/xbm_Import.xcu new file mode 100644 index 000000000000..a433e15a7fc5 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/xbm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="xbm_Import" oor:op="replace" > + <prop oor:name="Type"><value>xbm_X_Consortium</value></prop> + <prop oor:name="FormatName"><value>SVIXBM</value></prop> + <prop oor:name="RealFilterName"><value>XBM - X-Consortium</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">XBM - X Bitmap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/xpm_Export.xcu b/filter/source/config/fragments/internalgraphicfilters/xpm_Export.xcu new file mode 100644 index 000000000000..ee1effb786e9 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/xpm_Export.xcu @@ -0,0 +1,10 @@ + <node oor:name="xpm_Export" oor:op="replace" > + <prop oor:name="Type"><value>xpm_XPM</value></prop> + <prop oor:name="FormatName"><value>exp</value></prop> + <prop oor:name="RealFilterName"/> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">XPM - X PixMap</value> + </prop> + <prop oor:name="Flags"><value>EXPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/internalgraphicfilters/xpm_Import.xcu b/filter/source/config/fragments/internalgraphicfilters/xpm_Import.xcu new file mode 100644 index 000000000000..886e29bfe708 --- /dev/null +++ b/filter/source/config/fragments/internalgraphicfilters/xpm_Import.xcu @@ -0,0 +1,10 @@ + <node oor:name="xpm_Import" oor:op="replace" > + <prop oor:name="Type"><value>xpm_XPM</value></prop> + <prop oor:name="FormatName"><value>SVIXPM</value></prop> + <prop oor:name="RealFilterName"><value>XPM</value></prop> + <prop oor:name="UIComponent"/> + <prop oor:name="UIName"> + <value xml:lang="en-US">XPM - X PixMap</value> + </prop> + <prop oor:name="Flags"><value>IMPORT</value></prop> + </node> diff --git a/filter/source/config/fragments/langfilter.xsl b/filter/source/config/fragments/langfilter.xsl new file mode 100644 index 000000000000..76cfcff20ac6 --- /dev/null +++ b/filter/source/config/fragments/langfilter.xsl @@ -0,0 +1,37 @@ +<?xml version='1.0' encoding="UTF-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:oor="http://openoffice.org/2001/registry"> +<xsl:output method="xml" indent="yes" omit-xml-declaration="no" version="1.0" encoding="UTF-8"/> +<xsl:param name="lang"/> +<xsl:template match="*"> + <xsl:if test="count(.//*[@xml:lang=$lang])>0"> + <xsl:copy> + <xsl:apply-templates select="*|@*"/> + </xsl:copy> + </xsl:if> +</xsl:template> + +<xsl:template match="@*"> + <xsl:copy> + <xsl:apply-templates select="*|@*"/> + </xsl:copy> +</xsl:template> + +<xsl:template match="value"> + <xsl:if test="@xml:lang=$lang"> + <xsl:copy> + <xsl:apply-templates select="@*|text()"/> + </xsl:copy> + </xsl:if> +</xsl:template> + +<xsl:template match="text()"> + <xsl:if test="../@xml:lang=$lang"> + <xsl:copy> + <xsl:apply-templates select="@*|text()"/> + </xsl:copy> + </xsl:if> +</xsl:template> + + +</xsl:stylesheet> + diff --git a/filter/source/config/fragments/makefile.mk b/filter/source/config/fragments/makefile.mk new file mode 100644 index 000000000000..d827b3496359 --- /dev/null +++ b/filter/source/config/fragments/makefile.mk @@ -0,0 +1,255 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ = ..$/..$/.. +TARGET = FCFGPkg +PRJNAME = filter + +# ----------------------------------------------------------------------------- +# include global settings +# ----------------------------------------------------------------------------- + +.INCLUDE: settings.mk + +# ----------------------------------------------------------------------------- +# include all package definition files +# ----------------------------------------------------------------------------- + +.INCLUDE: packagedef.mk + +# ----------------------------------------------------------------------------- +# list of all required destination files +# ----------------------------------------------------------------------------- + +REALFILTERPACKAGES_TYPES_FLAG = \ + $(DIR_FILTERCFGOUT)$/fcfg_base.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_writer.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_w4w.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_database.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_xslt.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_palm.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketexcel.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketword.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_drawgraphics.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impressgraphics.types_flag + +.IF "$(WITH_BINFILTER)" != "NO" +REALFILTERPACKAGES_TYPES_FLAG += \ + $(DIR_FILTERCFGOUT)$/fcfg_writer_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart_bf.types_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math_bf.types_flag +.ENDIF + +REALFILTERPACKAGES_FILTERS_FLAG = \ + $(DIR_FILTERCFGOUT)$/fcfg_base.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_writer.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_w4w.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_database.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_xslt.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_palm.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketexcel.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketword.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_drawgraphics.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impressgraphics.filters_flag + +.IF "$(WITH_BINFILTER)" != "NO" +REALFILTERPACKAGES_FILTERS_FLAG += \ + $(DIR_FILTERCFGOUT)$/fcfg_writer_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart_bf.filters_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math_bf.filters_flag +.ENDIF + +REALFILTERPACKAGES_FILTERS_UI_MERGE = \ + $(DIR_LOCMERGE)$/filter_ui.xcu + +REALFILTERPACKAGES_FILTERS_UI_LANGPACKS = \ + $(foreach,i,$(alllangiso) $(DIR_LANGPACK)$/$i$/org$/openoffice$/TypeDetection$/Filter.xcu) + +REALFILTERPACKAGES_FILTERS_UI_LANGPACKS_PACKED = \ + $(foreach,i,$(alllangiso) $(COMMONBIN)$/fcfg_langpack_$i.zip) + +REALFILTERPACKAGES_OTHERS_FLAG = \ + $(DIR_FILTERCFGOUT)$/fcfg_base.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_writer.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_w4w.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_database.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_xslt.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_palm.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketexcel.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_pocketword.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_drawgraphics.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impressgraphics.others_flag + +.IF "$(WITH_BINFILTER)" != "NO" +REALFILTERPACKAGES_OTHERS_FLAG += \ + $(DIR_FILTERCFGOUT)$/fcfg_writer_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_web_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_global_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_calc_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_draw_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_impress_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_chart_bf.others_flag \ + $(DIR_FILTERCFGOUT)$/fcfg_math_bf.others_flag +.ENDIF + +INTERNALFILTERPACKAGES_TYPES_FLAG = \ + $(DIR_FILTERCFGOUT)$/fcfg_internalgraphics.types_flag + +INTERNALFILTERPACKAGES_FILTERS_FLAG = \ + $(DIR_FILTERCFGOUT)$/fcfg_internalgraphics.filters_flag + +ALL_FLAGS = \ + $(REALFILTERPACKAGES_TYPES_FLAG) \ + $(REALFILTERPACKAGES_FILTERS_FLAG) \ + $(REALFILTERPACKAGES_FILTERS_UI_MERGE) \ + $(REALFILTERPACKAGES_FILTERS_UI_LANGPACKS) \ + $(REALFILTERPACKAGES_OTHERS_FLAG) \ + $(INTERNALFILTERPACKAGES_TYPES_FLAG) \ + $(INTERNALFILTERPACKAGES_FILTERS_FLAG) + +# ----------------------------------------------------------------------------- +# build all +# ----------------------------------------------------------------------------- + +zip1generatedlangs=TRUE +zip1langdirs=$(alllangiso) +ZIP1TARGET=fcfg_langpack +ZIP1FLAGS= -u -r +ZIP1DIR=$(DIR_LANGPACK)$/$(LANGDIR) +ZIP1LIST=$(LANGDIR)$/* + +.INCLUDE: target.mk + +ALLTAR : $(ALL_FLAGS) + +$(ALL_FLAGS) : $(INCLUDE_FRAGMENTS) + +.IF "$(SOLAR_JAVA)"=="" +#cmc, hack to workaround the java build requirement +.IF "$(SYSTEM_PYTHON)" == "YES" +MERGE:=python ../tools/merge/pyAltFCFGMerge +.ELSE +MERGE:=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/python ../tools/merge/pyAltFCFGMerge +.ENDIF +.ELSE +MERGE := $(JAVAI) $(JAVAIFLAGS) -jar $(SOLARBINDIR)$/FCFGMerge.jar +.ENDIF + +PACKLANG := $(XSLTPROC) --nonet +PACKLANG_IN := +PACKLANG_PARAM := --stringparam +PACKLANG_XSL := + +# ----------------------------------------------------------------------------- +# build every module seperated +# ----------------------------------------------------------------------------- + +$(REALFILTERPACKAGES_TYPES_FLAG) : $$(TYPES_4$$(@:b)) + @echo =================================================================== + @echo Merge type fragments for package $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_MODPACKS) + $(MERGE) fragmentsdir=. tempdir=$(TEMP) outdir=$(DIR_MODPACKS) pkg=$(DIR_MODPACKS)$/$(@:b)_types.xcu xmlpackage=Types tcfg=$(mktmp items=$(TYPES_4$(@:b):b:t",":s/.xcu//)) && $(TOUCH) $@ + +$(REALFILTERPACKAGES_FILTERS_UI_MERGE) : $(ALL_UI_FILTERS) + @echo =================================================================== + @echo Merge localized filter fragments for package $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_LOCMERGE) + $(MERGE) fragmentsdir=$(DIR_LOCFRAG) tempdir=$(TEMP) pkg=$@ xmlpackage=Filter fcfg=$(mktmp items=$(ALL_UI_FILTERS:b:t",")) languagepack=true + +# Note: The used XSL transformation returns errors on stderr. +# But they dont do it in case we use the -OUT parameter. +# So we have to dump stdout to the target file and let stderr messages break the build! +$(REALFILTERPACKAGES_FILTERS_UI_LANGPACKS) : $(REALFILTERPACKAGES_FILTERS_UI_MERGE) + @echo =================================================================== + @echo Building language packages $(@:b:s/Filter_//) for filters + @echo =================================================================== + +-$(MKDIRHIER) $(@:d) + $(PACKLANG) $(PACKLANG_PARAM) lang $(@:d:d:d:d:d:d:d:d:b) $(PACKLANG_XSL) langfilter.xsl $(PACKLANG_IN) $< > $@ + +$(REALFILTERPACKAGES_FILTERS_UI_LANGPACKS_PACKED) : $(REALFILTERPACKAGES_FILTERS_UI_LANGPACKS) + +$(REALFILTERPACKAGES_FILTERS_FLAG) : $$(FILTERS_4$$(@:b)) + @echo =================================================================== + @echo Building packages filter $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_MODPACKS) + $(MERGE) fragmentsdir=. tempdir=$(TEMP) outdir=$(DIR_MODPACKS) pkg=$(DIR_MODPACKS)$/$(@:b)_filters.xcu xmlpackage=Filter fcfg=$(mktmp items=$(FILTERS_4$(@:b):b:t",":s/.xcu//)) && $(TOUCH) $@ + +$(REALFILTERPACKAGES_OTHERS_FLAG) : $$(ALL_4$$(@:b)) + @echo =================================================================== + @echo Building packages others $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_MODPACKS) + $(MERGE) fragmentsdir=. tempdir=$(TEMP) outdir=$(DIR_MODPACKS) pkg=$(DIR_MODPACKS)$/$(@:b)_others.xcu xmlpackage=Misc lcfg=$(mktmp items=$(FRAMELOADERS_4$(@:b):b:t",":s/.xcu//)) ccfg=$(mktmp items=$(CONTENTHANDLERS_4$(@:b):b:t",":s/.xcu//)) && $(TOUCH) $@ + +$(INTERNALFILTERPACKAGES_TYPES_FLAG) : $$(TYPES_4$$(@:b)) + @echo =================================================================== + @echo Building special packages types $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_MODPACKS) + $(MERGE) fragmentsdir=. tempdir=$(TEMP) outdir=$(DIR_MODPACKS) pkg=$(DIR_MODPACKS)$/$(@:b)_types.xcu xmlpackage=Types tcfg=$(mktmp items=$(TYPES_4$(@:b):b:t",":s/.xcu//)) && $(TOUCH) $@ + +$(INTERNALFILTERPACKAGES_FILTERS_FLAG) : $$(FILTERS_4$$(@:b)) + @echo =================================================================== + @echo Building special packages filter $@ + @echo =================================================================== + -$(MKDIRHIER) $(DIR_MODPACKS) + $(MERGE) fragmentsdir=. tempdir=$(TEMP) outdir=$(DIR_MODPACKS) pkg=$(DIR_MODPACKS)$/$(@:b)_filters.xcu xmlpackage=GraphicFilter fcfg=$(mktmp items=$(FILTERS_4$(@:b):b:t",":s/.xcu//)) subdir_filters=internalgraphicfilters && $(TOUCH) $@ + diff --git a/filter/source/config/fragments/packagedef.mk b/filter/source/config/fragments/packagedef.mk new file mode 100644 index 000000000000..fda7b4a6cc60 --- /dev/null +++ b/filter/source/config/fragments/packagedef.mk @@ -0,0 +1,71 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +DIR_FILTERCFGOUT := $(MISC)$/filters +.IF "$(WITH_LANG)"!="" +DIR_LOCFRAG := $(DIR_FILTERCFGOUT)$/ui$/fragments +.ELSE # "$(WITH_LANG)"!="" +DIR_LOCFRAG := $(PRJ)$/source$/config$/fragments +.ENDIF # "$(WITH_LANG)"!="" +DIR_LOCMERGE := $(DIR_FILTERCFGOUT)$/ui$/merge +DIR_LANGPACK := $(DIR_FILTERCFGOUT)$/ui$/langpacks +DIR_MODPACKS := $(DIR_FILTERCFGOUT)$/modulepacks + +INCLUDE_FRAGMENTS = \ + $(PRJ)$/source$/config$/fragments$/fcfg_base.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_database.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_writer.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_web.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_global.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_w4w.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_calc.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_draw.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_impress.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_database.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_chart.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_math.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_xslt.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_palm.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_pocketword.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_pocketexcel.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_drawgraphics.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_impressgraphics.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_internalgraphics.mk + +.IF "$(WITH_BINFILTER)" != "NO" +INCLUDE_FRAGMENTS += \ + $(PRJ)$/source$/config$/fragments$/fcfg_writer_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_web_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_global_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_calc_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_draw_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_impress_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_chart_bf.mk \ + $(PRJ)$/source$/config$/fragments$/fcfg_math_bf.mk +.ENDIF + +.INCLUDE: $(INCLUDE_FRAGMENTS) diff --git a/filter/source/config/fragments/types/MS_Excel_2007_Binary.xcu b/filter/source/config/fragments/types/MS_Excel_2007_Binary.xcu new file mode 100644 index 000000000000..fd0183d0555f --- /dev/null +++ b/filter/source/config/fragments/types/MS_Excel_2007_Binary.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 2007 Binary" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlsb</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Calc MS Excel 2007 Binary</value></prop> + <prop oor:name="UIName"><value xml:lang="x-default">Microsoft Excel 2007 Binary</value></prop> + <prop oor:name="ClipboardFormat"/> +</node> diff --git a/filter/source/config/fragments/types/MS_Excel_2007_XML.xcu b/filter/source/config/fragments/types/MS_Excel_2007_XML.xcu new file mode 100644 index 000000000000..edd1498e39df --- /dev/null +++ b/filter/source/config/fragments/types/MS_Excel_2007_XML.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 2007 XML" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlsm xlsx</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Calc MS Excel 2007 XML</value></prop> + <prop oor:name="UIName"><value xml:lang="x-default">Microsoft Excel 2007 XML</value></prop> + <prop oor:name="ClipboardFormat"/> +</node> diff --git a/filter/source/config/fragments/types/MS_Excel_2007_XML_Template.xcu b/filter/source/config/fragments/types/MS_Excel_2007_XML_Template.xcu new file mode 100644 index 000000000000..5aa05abd7010 --- /dev/null +++ b/filter/source/config/fragments/types/MS_Excel_2007_XML_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS Excel 2007 XML Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xltm xltx</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Calc MS Excel 2007 XML Template</value></prop> + <prop oor:name="UIName"><value xml:lang="x-default">Microsoft Excel 2007 XML Template</value></prop> + <prop oor:name="ClipboardFormat"/> +</node> diff --git a/filter/source/config/fragments/types/MS_PowerPoint_2007_XML.xcu b/filter/source/config/fragments/types/MS_PowerPoint_2007_XML.xcu new file mode 100644 index 000000000000..99f22ee47e7a --- /dev/null +++ b/filter/source/config/fragments/types/MS_PowerPoint_2007_XML.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS PowerPoint 2007 XML" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pptm pptx</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>Impress MS PowerPoint 2007 XML</value></prop> + <prop oor:name="UIName"><value xml:lang="x-default">Microsoft PowerPoint 2007 XML</value></prop> + <prop oor:name="ClipboardFormat"/> +</node> diff --git a/filter/source/config/fragments/types/MS_PowerPoint_2007_XML_Template.xcu b/filter/source/config/fragments/types/MS_PowerPoint_2007_XML_Template.xcu new file mode 100644 index 000000000000..9341c3c57c31 --- /dev/null +++ b/filter/source/config/fragments/types/MS_PowerPoint_2007_XML_Template.xcu @@ -0,0 +1,10 @@ +<node oor:name="MS PowerPoint 2007 XML Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>potm potx</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>Impress MS PowerPoint 2007 XML Template</value></prop> + <prop oor:name="UIName"><value>Microsoft PowerPoint 2007 XML Template</value></prop> + <prop oor:name="ClipboardFormat"/> +</node> diff --git a/filter/source/config/fragments/types/StarBase.xcu b/filter/source/config/fragments/types/StarBase.xcu new file mode 100644 index 000000000000..85d8b7a7e5f1 --- /dev/null +++ b/filter/source/config/fragments/types/StarBase.xcu @@ -0,0 +1,12 @@ + <node oor:name="StarBase" oor:op="replace"> + <prop oor:name="DetectService"><value>org.openoffice.comp.dbflt.DBTypeDetection</value></prop> + <prop oor:name="URLPattern"><value>private:factory/sdatabase*</value></prop> + <prop oor:name="Extensions"><value>odb</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.base</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Base)</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">OpenDocument Database</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarBase 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/Unified_Office_Format_presentation.xcu b/filter/source/config/fragments/types/Unified_Office_Format_presentation.xcu new file mode 100644 index 000000000000..f814eb998b5f --- /dev/null +++ b/filter/source/config/fragments/types/Unified_Office_Format_presentation.xcu @@ -0,0 +1,12 @@ + <node oor:name="Unified_Office_Format_presentation" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value oor:separator=";">uop;uof</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>Unified Office Format presentation</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:vnd.uof.presentation</value></prop> + </node> diff --git a/filter/source/config/fragments/types/Unified_Office_Format_spreadsheet.xcu b/filter/source/config/fragments/types/Unified_Office_Format_spreadsheet.xcu new file mode 100644 index 000000000000..a8bae7e1ed2d --- /dev/null +++ b/filter/source/config/fragments/types/Unified_Office_Format_spreadsheet.xcu @@ -0,0 +1,12 @@ + <node oor:name="Unified_Office_Format_spreadsheet" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value oor:separator=";">uos;uof</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>Unified Office Format spreadsheet</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:vnd.uof.spreadsheet</value></prop> + </node> diff --git a/filter/source/config/fragments/types/Unified_Office_Format_text.xcu b/filter/source/config/fragments/types/Unified_Office_Format_text.xcu new file mode 100644 index 000000000000..76bf0e5fffa9 --- /dev/null +++ b/filter/source/config/fragments/types/Unified_Office_Format_text.xcu @@ -0,0 +1,12 @@ + <node oor:name="Unified_Office_Format_text" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value oor:separator=";">uot;uof</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>Unified Office Format text</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:vnd.uof.text</value></prop> + </node> diff --git a/filter/source/config/fragments/types/XHTML_File.xcu b/filter/source/config/fragments/types/XHTML_File.xcu new file mode 100644 index 000000000000..ea594b1aaf5f --- /dev/null +++ b/filter/source/config/fragments/types/XHTML_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="XHTML_File" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>html xhtml</value></prop> + <prop oor:name="MediaType"><value>application/xhtml+xml</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>XHTML</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/bmp_MS_Windows.xcu b/filter/source/config/fragments/types/bmp_MS_Windows.xcu new file mode 100644 index 000000000000..a344333abaa0 --- /dev/null +++ b/filter/source/config/fragments/types/bmp_MS_Windows.xcu @@ -0,0 +1,12 @@ + <node oor:name="bmp_MS_Windows" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>bmp</value></prop> + <prop oor:name="MediaType"><value>image/x-MS-bmp</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>BMP - MS Windows</value></prop> + <prop oor:name="UIName"> + <value>BMP - Windows Bitmap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc8.xcu b/filter/source/config/fragments/types/calc8.xcu new file mode 100644 index 000000000000..f351e0c14c5d --- /dev/null +++ b/filter/source/config/fragments/types/calc8.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc8" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/scalc*</value></prop> + <prop oor:name="Extensions"><value>ods</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.spreadsheet</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>calc8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Calc 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Calc 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc8_template.xcu b/filter/source/config/fragments/types/calc8_template.xcu new file mode 100644 index 000000000000..933cbc84ab34 --- /dev/null +++ b/filter/source/config/fragments/types/calc8_template.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc8_template" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ots</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.spreadsheet-template</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>calc8_template</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Calc 8 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Calc 8 Template</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_DIF.xcu b/filter/source/config/fragments/types/calc_DIF.xcu new file mode 100644 index 000000000000..f2c8a8e9d247 --- /dev/null +++ b/filter/source/config/fragments/types/calc_DIF.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_DIF" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DIF</value></prop> + <prop oor:name="UIName"> + <value>Data Interchange Format</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_Lotus.xcu b/filter/source/config/fragments/types/calc_Lotus.xcu new file mode 100644 index 000000000000..5e4581301586 --- /dev/null +++ b/filter/source/config/fragments/types/calc_Lotus.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_Lotus" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wk1 wks 123</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>Lotus</value></prop> + <prop oor:name="UIName"> + <value>Lotus</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_2003_XML.xcu b/filter/source/config/fragments/types/calc_MS_Excel_2003_XML.xcu new file mode 100644 index 000000000000..a3af765eaeb4 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_2003_XML.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_2003_XML" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xml</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 2003 XML</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 2003 XML</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:Workbook</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_40.xcu b/filter/source/config/fragments/types/calc_MS_Excel_40.xcu new file mode 100644 index 000000000000..b45c21fa33bd --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xls xlw xlc xlm</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 4.0</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Excel 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_40_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_MS_Excel_40_VorlageTemplate.xcu new file mode 100644 index 000000000000..42bb10ed09c8 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_40_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_40_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlt</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 4.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>MS Excel 4.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_5095.xcu b/filter/source/config/fragments/types/calc_MS_Excel_5095.xcu new file mode 100644 index 000000000000..3f450f0cb85f --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_5095.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_5095" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xls xlc xlm xlw</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 5.0/95</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Excel 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff5</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_5095_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_MS_Excel_5095_VorlageTemplate.xcu new file mode 100644 index 000000000000..8dbb02c0170e --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_5095_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_5095_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlt</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 5.0/95 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>MS Excel 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff5</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_95.xcu b/filter/source/config/fragments/types/calc_MS_Excel_95.xcu new file mode 100644 index 000000000000..0ea10dddc31e --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_95.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_95" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xls xlc xlm xlw</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 95</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Excel 95</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff5</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_95_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_MS_Excel_95_VorlageTemplate.xcu new file mode 100644 index 000000000000..fb3e41014f85 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_95_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_95_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlt</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 95 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>MS Excel 95 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff5</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_97.xcu b/filter/source/config/fragments/types/calc_MS_Excel_97.xcu new file mode 100644 index 000000000000..9f1949d9f413 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_97.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_97" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xls xlc xlm xlw</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 97</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Excel 97/2000/XP</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MS_Excel_97_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_MS_Excel_97_VorlageTemplate.xcu new file mode 100644 index 000000000000..26f4bca3a725 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MS_Excel_97_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MS_Excel_97_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xlt</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-excel</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Excel 97 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>MS Excel 97/2000 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Biff8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_MiniCalc_PalmDB_File.xcu b/filter/source/config/fragments/types/calc_MiniCalc_PalmDB_File.xcu new file mode 100644 index 000000000000..7362f8308b52 --- /dev/null +++ b/filter/source/config/fragments/types/calc_MiniCalc_PalmDB_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_MiniCalc_PalmDB_File" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pdb</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MiniCalc (Palm)</value></prop> + <prop oor:name="UIName"> + <value>MiniCalc (Palm)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_Pocket_Excel_File.xcu b/filter/source/config/fragments/types/calc_Pocket_Excel_File.xcu new file mode 100644 index 000000000000..6be3877cdc81 --- /dev/null +++ b/filter/source/config/fragments/types/calc_Pocket_Excel_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_Pocket_Excel_File" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pxl</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Pocket Excel</value></prop> + <prop oor:name="UIName"> + <value>Pocket Excel</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_QPro.xcu b/filter/source/config/fragments/types/calc_QPro.xcu new file mode 100644 index 000000000000..751b534fb511 --- /dev/null +++ b/filter/source/config/fragments/types/calc_QPro.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_QPro" oor:op="replace" oor:finalized="true" oor:mandatory="true"> + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wb2</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>Quattro Pro 6.0</value></prop> + <prop oor:name="UIName"> + <value>Quattro Pro 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_SYLK.xcu b/filter/source/config/fragments/types/calc_SYLK.xcu new file mode 100644 index 000000000000..bcc970a91987 --- /dev/null +++ b/filter/source/config/fragments/types/calc_SYLK.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_SYLK" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>slk</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>SYLK</value></prop> + <prop oor:name="UIName"> + <value>SYLK</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_10.xcu b/filter/source/config/fragments/types/calc_StarCalc_10.xcu new file mode 100644 index 000000000000..0a90e4001b97 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_10.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_10" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 1.0</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_30.xcu b/filter/source/config/fragments/types/calc_StarCalc_30.xcu new file mode 100644 index 000000000000..27f46b7ad70a --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_30.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_30" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdc</value></prop> + <prop oor:name="MediaType"><value>application/x-starcalc</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 3.0</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalcDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_30_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_StarCalc_30_VorlageTemplate.xcu new file mode 100644 index 000000000000..866b5efa7c1b --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_30_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_30_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 3.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 3.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalcDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_40.xcu b/filter/source/config/fragments/types/calc_StarCalc_40.xcu new file mode 100644 index 000000000000..a794e57d4cc6 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdc</value></prop> + <prop oor:name="MediaType"><value>application/x-starcalc</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 4.0</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalc 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_40_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_StarCalc_40_VorlageTemplate.xcu new file mode 100644 index 000000000000..f16c7510bf20 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_40_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_40_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 4.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 4.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalc 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_50.xcu b/filter/source/config/fragments/types/calc_StarCalc_50.xcu new file mode 100644 index 000000000000..f3659cdcd203 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdc</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.calc</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalc 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarCalc_50_VorlageTemplate.xcu b/filter/source/config/fragments/types/calc_StarCalc_50_VorlageTemplate.xcu new file mode 100644 index 000000000000..e517605c5756 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarCalc_50_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarCalc_50_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarCalc 5.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarCalc 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarCalc 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarOffice_XML_Calc.xcu b/filter/source/config/fragments/types/calc_StarOffice_XML_Calc.xcu new file mode 100644 index 000000000000..9a37858f5fa7 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarOffice_XML_Calc.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarOffice_XML_Calc" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxc</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.calc</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Calc)</value></prop> + <prop oor:name="UIName"> + <value>Calc 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Calc 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_StarOffice_XML_Calc_Template.xcu b/filter/source/config/fragments/types/calc_StarOffice_XML_Calc_Template.xcu new file mode 100644 index 000000000000..022e6acfae29 --- /dev/null +++ b/filter/source/config/fragments/types/calc_StarOffice_XML_Calc_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_StarOffice_XML_Calc_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>stc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>calc_StarOffice_XML_Calc_Template</value></prop> + <prop oor:name="UIName"> + <value>Calc 6.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Calc 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/calc_Text_txt_csv_StarCalc.xcu b/filter/source/config/fragments/types/calc_Text_txt_csv_StarCalc.xcu new file mode 100644 index 000000000000..708717263917 --- /dev/null +++ b/filter/source/config/fragments/types/calc_Text_txt_csv_StarCalc.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_Text_txt_csv_StarCalc" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>csv txt</value></prop> + <prop oor:name="MediaType"><value>text/plain</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Text - txt - csv (StarCalc)</value></prop> + <prop oor:name="UIName"> + <value>Text - txt - csv (StarOffice Calc)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/calc_dBase.xcu b/filter/source/config/fragments/types/calc_dBase.xcu new file mode 100644 index 000000000000..e2707d4b00f3 --- /dev/null +++ b/filter/source/config/fragments/types/calc_dBase.xcu @@ -0,0 +1,12 @@ + <node oor:name="calc_dBase" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.calc.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dbf</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>dBase</value></prop> + <prop oor:name="UIName"> + <value>dBASE</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/chart8.xcu b/filter/source/config/fragments/types/chart8.xcu new file mode 100644 index 000000000000..22e6d7d15e36 --- /dev/null +++ b/filter/source/config/fragments/types/chart8.xcu @@ -0,0 +1,12 @@ + <node oor:name="chart8" oor:op="replace"> + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"><value>private:factory/schart*</value></prop> + <prop oor:name="Extensions"><value>odc</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.chart</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>chart8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Chart 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Chart 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/chart_StarChart_30.xcu b/filter/source/config/fragments/types/chart_StarChart_30.xcu new file mode 100644 index 000000000000..f42c5b6c9f05 --- /dev/null +++ b/filter/source/config/fragments/types/chart_StarChart_30.xcu @@ -0,0 +1,12 @@ + <node oor:name="chart_StarChart_30" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sds</value></prop> + <prop oor:name="MediaType"><value>application/x-starchart</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarChart 3.0</value></prop> + <prop oor:name="UIName"> + <value>StarChart 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarChartDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/types/chart_StarChart_40.xcu b/filter/source/config/fragments/types/chart_StarChart_40.xcu new file mode 100644 index 000000000000..a1ce87af1abe --- /dev/null +++ b/filter/source/config/fragments/types/chart_StarChart_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="chart_StarChart_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sds</value></prop> + <prop oor:name="MediaType"><value>application/x-starchart</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarChart 4.0</value></prop> + <prop oor:name="UIName"> + <value>StarChart 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarChartDocument 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/chart_StarChart_50.xcu b/filter/source/config/fragments/types/chart_StarChart_50.xcu new file mode 100644 index 000000000000..79ff33234b6a --- /dev/null +++ b/filter/source/config/fragments/types/chart_StarChart_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="chart_StarChart_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sds</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.chart</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarChart 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarChart 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarChart 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/chart_StarOffice_XML_Chart.xcu b/filter/source/config/fragments/types/chart_StarOffice_XML_Chart.xcu new file mode 100644 index 000000000000..1d581ae3b87c --- /dev/null +++ b/filter/source/config/fragments/types/chart_StarOffice_XML_Chart.xcu @@ -0,0 +1,12 @@ + <node oor:name="chart_StarOffice_XML_Chart" oor:op="replace" oor:finalized="true" oor:mandatory="true"> + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxs</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.chart</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Chart)</value></prop> + <prop oor:name="UIName"> + <value>Chart 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Chart 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/component_Bibliography.xcu b/filter/source/config/fragments/types/component_Bibliography.xcu new file mode 100644 index 000000000000..dac9d9e2f19c --- /dev/null +++ b/filter/source/config/fragments/types/component_Bibliography.xcu @@ -0,0 +1,12 @@ + <node oor:name="component_Bibliography" oor:op="replace" > + <prop oor:name="URLPattern"><value>.component:Bibliography/*</value></prop> + <prop oor:name="Extensions"/> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="UIName"> + <value>Bibliography component</value> + </prop> + <prop oor:name="ClipboardFormat"/> + <prop oor:name="DetectService"/> + <prop oor:name="PreferredFilter"/> + </node> diff --git a/filter/source/config/fragments/types/component_DB.xcu b/filter/source/config/fragments/types/component_DB.xcu new file mode 100644 index 000000000000..7fe591eda872 --- /dev/null +++ b/filter/source/config/fragments/types/component_DB.xcu @@ -0,0 +1,12 @@ + <node oor:name="component_DB" oor:op="replace" > + <prop oor:name="URLPattern"><value>.component:DB*</value></prop> + <prop oor:name="Extensions"/> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="UIName"> + <value>DB component</value> + </prop> + <prop oor:name="ClipboardFormat"/> + <prop oor:name="DetectService"/> + <prop oor:name="PreferredFilter"/> + </node> diff --git a/filter/source/config/fragments/types/draw8.xcu b/filter/source/config/fragments/types/draw8.xcu new file mode 100644 index 000000000000..b74358397bff --- /dev/null +++ b/filter/source/config/fragments/types/draw8.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw8" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/sdraw*</value></prop> + <prop oor:name="Extensions"><value>odg</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.graphics</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Draw 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Draw 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw8_template.xcu b/filter/source/config/fragments/types/draw8_template.xcu new file mode 100644 index 000000000000..aac3d5e7b1eb --- /dev/null +++ b/filter/source/config/fragments/types/draw8_template.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw8_template" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>otg</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.graphics-template</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw8_template</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Draw 8 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Draw 8 Template</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarDraw_30.xcu b/filter/source/config/fragments/types/draw_StarDraw_30.xcu new file mode 100644 index 000000000000..208b247662b7 --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarDraw_30.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarDraw_30" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdd</value></prop> + <prop oor:name="MediaType"><value>application/x-stardraw</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarDraw 3.0 (StarImpress)</value></prop> + <prop oor:name="UIName"> + <value>StarDraw 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDrawDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarDraw_30_Vorlage.xcu b/filter/source/config/fragments/types/draw_StarDraw_30_Vorlage.xcu new file mode 100644 index 000000000000..f618780b0de9 --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarDraw_30_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarDraw_30_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarDraw 3.0 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>StarDraw 3.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDrawDocument </value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarDraw_50.xcu b/filter/source/config/fragments/types/draw_StarDraw_50.xcu new file mode 100644 index 000000000000..18340f2a7937 --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarDraw_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarDraw_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sda</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.draw</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarDraw 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarDraw 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDraw 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarDraw_50_Vorlage.xcu b/filter/source/config/fragments/types/draw_StarDraw_50_Vorlage.xcu new file mode 100644 index 000000000000..5063da9bbdfb --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarDraw_50_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarDraw_50_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarDraw 5.0 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>StarDraw 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDraw 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarOffice_XML_Draw.xcu b/filter/source/config/fragments/types/draw_StarOffice_XML_Draw.xcu new file mode 100644 index 000000000000..9bae1925f977 --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarOffice_XML_Draw.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarOffice_XML_Draw" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxd</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.draw</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Draw)</value></prop> + <prop oor:name="UIName"> + <value>%productname% %formatversion% Zeichnung</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Draw 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/draw_StarOffice_XML_Draw_Template.xcu b/filter/source/config/fragments/types/draw_StarOffice_XML_Draw_Template.xcu new file mode 100644 index 000000000000..6367ec382ac2 --- /dev/null +++ b/filter/source/config/fragments/types/draw_StarOffice_XML_Draw_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="draw_StarOffice_XML_Draw_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>std</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw_StarOffice_XML_Draw_Template</value></prop> + <prop oor:name="UIName"> + <value>Draw 6.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Draw 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/dxf_AutoCAD_Interchange.xcu b/filter/source/config/fragments/types/dxf_AutoCAD_Interchange.xcu new file mode 100644 index 000000000000..d7df23807f1f --- /dev/null +++ b/filter/source/config/fragments/types/dxf_AutoCAD_Interchange.xcu @@ -0,0 +1,12 @@ + <node oor:name="dxf_AutoCAD_Interchange" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dxf</value></prop> + <prop oor:name="MediaType"><value>image/vnd.dxf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DXF - AutoCAD Interchange</value></prop> + <prop oor:name="UIName"> + <value>DXF - AutoCAD Interchange Format</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/emf_MS_Windows_Metafile.xcu b/filter/source/config/fragments/types/emf_MS_Windows_Metafile.xcu new file mode 100644 index 000000000000..3f2789c161b8 --- /dev/null +++ b/filter/source/config/fragments/types/emf_MS_Windows_Metafile.xcu @@ -0,0 +1,12 @@ + <node oor:name="emf_MS_Windows_Metafile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>emf</value></prop> + <prop oor:name="MediaType"><value>image/x-emf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>EMF - MS Windows Metafile</value></prop> + <prop oor:name="UIName"> + <value>EMF - Enhanced Meta File</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/eps_Encapsulated_PostScript.xcu b/filter/source/config/fragments/types/eps_Encapsulated_PostScript.xcu new file mode 100644 index 000000000000..32fdda46d7f7 --- /dev/null +++ b/filter/source/config/fragments/types/eps_Encapsulated_PostScript.xcu @@ -0,0 +1,12 @@ + <node oor:name="eps_Encapsulated_PostScript" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>eps</value></prop> + <prop oor:name="MediaType"><value>image/x-eps</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>EPS - Encapsulated PostScript</value></prop> + <prop oor:name="UIName"> + <value>EPS - Encapsulated PostScript</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/gif_Graphics_Interchange.xcu b/filter/source/config/fragments/types/gif_Graphics_Interchange.xcu new file mode 100644 index 000000000000..13eed4ad46ea --- /dev/null +++ b/filter/source/config/fragments/types/gif_Graphics_Interchange.xcu @@ -0,0 +1,12 @@ + <node oor:name="gif_Graphics_Interchange" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>gif</value></prop> + <prop oor:name="MediaType"><value>image/gif</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>GIF - Graphics Interchange</value></prop> + <prop oor:name="UIName"> + <value>GIF - Graphics Interchange</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/graphic_HTML.xcu b/filter/source/config/fragments/types/graphic_HTML.xcu new file mode 100644 index 000000000000..7c834cccf687 --- /dev/null +++ b/filter/source/config/fragments/types/graphic_HTML.xcu @@ -0,0 +1,12 @@ + <node oor:name="graphic_HTML" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>html htm</value></prop> + <prop oor:name="MediaType"><value>text/html</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>HTML</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/graphic_SWF.xcu b/filter/source/config/fragments/types/graphic_SWF.xcu new file mode 100644 index 000000000000..ce67250d0854 --- /dev/null +++ b/filter/source/config/fragments/types/graphic_SWF.xcu @@ -0,0 +1,12 @@ + <node oor:name="graphic_SWF" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>swf</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>Macromedia Flash (SWF)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/impress8.xcu b/filter/source/config/fragments/types/impress8.xcu new file mode 100644 index 000000000000..8242aac979ec --- /dev/null +++ b/filter/source/config/fragments/types/impress8.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress8" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/simpress*</value></prop> + <prop oor:name="Extensions"><value>odp</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.presentation</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>impress8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Impress 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Impress 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress8_template.xcu b/filter/source/config/fragments/types/impress8_template.xcu new file mode 100644 index 000000000000..9b1a49261eb9 --- /dev/null +++ b/filter/source/config/fragments/types/impress8_template.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress8_template" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>otp</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.presentation-template</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>impress8_template</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Impress 8 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Impress 8 Template</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_CGM_Computer_Graphics_Metafile.xcu b/filter/source/config/fragments/types/impress_CGM_Computer_Graphics_Metafile.xcu new file mode 100644 index 000000000000..5f30bb455a4c --- /dev/null +++ b/filter/source/config/fragments/types/impress_CGM_Computer_Graphics_Metafile.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_CGM_Computer_Graphics_Metafile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>cgm</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>CGM - Computer Graphics Metafile</value></prop> + <prop oor:name="UIName"> + <value>CGM - Computer Graphics Metafile</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/impress_MS_PowerPoint_97.xcu b/filter/source/config/fragments/types/impress_MS_PowerPoint_97.xcu new file mode 100644 index 000000000000..3584127fed3a --- /dev/null +++ b/filter/source/config/fragments/types/impress_MS_PowerPoint_97.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_MS_PowerPoint_97" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ppt pps</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-powerpoint</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS PowerPoint 97</value></prop> + <prop oor:name="UIName"> + <value>Microsoft PowerPoint 97/2000/XP</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/impress_MS_PowerPoint_97_Vorlage.xcu b/filter/source/config/fragments/types/impress_MS_PowerPoint_97_Vorlage.xcu new file mode 100644 index 000000000000..6e9690e4c554 --- /dev/null +++ b/filter/source/config/fragments/types/impress_MS_PowerPoint_97_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_MS_PowerPoint_97_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pot</value></prop> + <prop oor:name="MediaType"><value>application/vnd.ms-powerpoint</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS PowerPoint 97 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>MS PowerPoint 97/2000 Template</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/impress_StarImpress_40.xcu b/filter/source/config/fragments/types/impress_StarImpress_40.xcu new file mode 100644 index 000000000000..bdb4c6516b63 --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarImpress_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarImpress_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdd</value></prop> + <prop oor:name="MediaType"><value>application/x-starimpress</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarImpress 4.0</value></prop> + <prop oor:name="UIName"> + <value>StarImpress 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDrawDocument 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_StarImpress_40_Vorlage.xcu b/filter/source/config/fragments/types/impress_StarImpress_40_Vorlage.xcu new file mode 100644 index 000000000000..76db489ac6f0 --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarImpress_40_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarImpress_40_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarImpress 4.0 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>StarImpress 4.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarDrawDocument 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_StarImpress_50.xcu b/filter/source/config/fragments/types/impress_StarImpress_50.xcu new file mode 100644 index 000000000000..32b54804f077 --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarImpress_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarImpress_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdd</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.impress</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarImpress 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarImpress 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarImpress 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_StarImpress_50_Vorlage.xcu b/filter/source/config/fragments/types/impress_StarImpress_50_Vorlage.xcu new file mode 100644 index 000000000000..e0538927e440 --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarImpress_50_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarImpress_50_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarImpress 5.0 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>StarImpress 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarImpress 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_StarImpress_50_packed.xcu b/filter/source/config/fragments/types/impress_StarImpress_50_packed.xcu new file mode 100644 index 000000000000..8a9f02a439e0 --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarImpress_50_packed.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarImpress_50_packed" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdp</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.impress-packed</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarImpress 5.0 (packed)</value></prop> + <prop oor:name="UIName"> + <value>StarImpress (packed)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/impress_StarOffice_XML_Impress.xcu b/filter/source/config/fragments/types/impress_StarOffice_XML_Impress.xcu new file mode 100644 index 000000000000..e015eff35e5b --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarOffice_XML_Impress.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarOffice_XML_Impress" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxi</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.impress</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Impress)</value></prop> + <prop oor:name="UIName"> + <value>%productname% %formatversion% Präsentation</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Impress 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/impress_StarOffice_XML_Impress_Template.xcu b/filter/source/config/fragments/types/impress_StarOffice_XML_Impress_Template.xcu new file mode 100644 index 000000000000..764e822d1cbb --- /dev/null +++ b/filter/source/config/fragments/types/impress_StarOffice_XML_Impress_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="impress_StarOffice_XML_Impress_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sti</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>impress_StarOffice_XML_Impress_Template</value></prop> + <prop oor:name="UIName"> + <value>Impress 6.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Impress 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/jpg_JPEG.xcu b/filter/source/config/fragments/types/jpg_JPEG.xcu new file mode 100644 index 000000000000..00ca0bff41de --- /dev/null +++ b/filter/source/config/fragments/types/jpg_JPEG.xcu @@ -0,0 +1,12 @@ + <node oor:name="jpg_JPEG" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>jpg jpeg jfif jif jpe</value></prop> + <prop oor:name="MediaType"><value>image/jpeg</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>JPG - JPEG</value></prop> + <prop oor:name="UIName"> + <value>JPEG - Joint Photographic Experts Group</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/makefile.mk b/filter/source/config/fragments/types/makefile.mk new file mode 100644 index 000000000000..67ad14b038a2 --- /dev/null +++ b/filter/source/config/fragments/types/makefile.mk @@ -0,0 +1,54 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ = ..$/..$/..$/.. +TARGET = FCFGPkgTypes +PRJNAME = filter + +# ----------------------------------------------------------------------------- +# include global settings +# ----------------------------------------------------------------------------- + +.INCLUDE: settings.mk + +# ----------------------------------------------------------------------------- +# build nothing! +# This makefile is a fake, to force localization of types +# in combination with our data base tool! +# ----------------------------------------------------------------------------- + +TYPES_LIST= \ + $(BIN)$/dummy.dummy + +.INCLUDE: target.mk + +.IF "$(SOLAR_JAVA)"!="" +ALLTAR: $(TYPES_LIST) +.ENDIF + +$(TYPES_LIST) : + @echo "localize types ..." diff --git a/filter/source/config/fragments/types/math8.xcu b/filter/source/config/fragments/types/math8.xcu new file mode 100644 index 000000000000..e33c2d6f88ae --- /dev/null +++ b/filter/source/config/fragments/types/math8.xcu @@ -0,0 +1,12 @@ + <node oor:name="math8" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.math.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/smath*</value></prop> + <prop oor:name="Extensions"><value>odf</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.formula</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>math8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Math 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Math 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/math_MathML_XML_Math.xcu b/filter/source/config/fragments/types/math_MathML_XML_Math.xcu new file mode 100644 index 000000000000..ae79854aae5c --- /dev/null +++ b/filter/source/config/fragments/types/math_MathML_XML_Math.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_MathML_XML_Math" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.math.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>mml</value></prop> + <prop oor:name="MediaType"><value>application/mathml+xml</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MathML XML (Math)</value></prop> + <prop oor:name="UIName"> + <value>MathML 1.01</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/math_MathType_3x.xcu b/filter/source/config/fragments/types/math_MathType_3x.xcu new file mode 100644 index 000000000000..3b3c88b3f1a7 --- /dev/null +++ b/filter/source/config/fragments/types/math_MathType_3x.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_MathType_3x" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.math.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xxx</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MathType 3.x</value></prop> + <prop oor:name="UIName"> + <value>MathType3.x</value> + </prop> + <prop oor:name="ClipboardFormat"><value>DS Equation</value></prop> + </node> diff --git a/filter/source/config/fragments/types/math_StarMath_20.xcu b/filter/source/config/fragments/types/math_StarMath_20.xcu new file mode 100644 index 000000000000..3870f92cd83f --- /dev/null +++ b/filter/source/config/fragments/types/math_StarMath_20.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_StarMath_20" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.math.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>smf</value></prop> + <prop oor:name="MediaType"><value>application/x-starmath</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarMath 2.0</value></prop> + <prop oor:name="UIName"> + <value>StarMath 2.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/math_StarMath_30.xcu b/filter/source/config/fragments/types/math_StarMath_30.xcu new file mode 100644 index 000000000000..f2410d3bcb77 --- /dev/null +++ b/filter/source/config/fragments/types/math_StarMath_30.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_StarMath_30" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>smf</value></prop> + <prop oor:name="MediaType"><value>application/x-starmath</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarMath 3.0</value></prop> + <prop oor:name="UIName"> + <value>StarMath 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarMath</value></prop> + </node> diff --git a/filter/source/config/fragments/types/math_StarMath_40.xcu b/filter/source/config/fragments/types/math_StarMath_40.xcu new file mode 100644 index 000000000000..c535af92e0e5 --- /dev/null +++ b/filter/source/config/fragments/types/math_StarMath_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_StarMath_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>smf</value></prop> + <prop oor:name="MediaType"><value>application/x-starmath</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarMath 4.0</value></prop> + <prop oor:name="UIName"> + <value>StarMath 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarMathDocument 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/math_StarMath_50.xcu b/filter/source/config/fragments/types/math_StarMath_50.xcu new file mode 100644 index 000000000000..183d55a4b925 --- /dev/null +++ b/filter/source/config/fragments/types/math_StarMath_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_StarMath_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>smf</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.math</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>StarMath 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarMath 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarMath 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/math_StarOffice_XML_Math.xcu b/filter/source/config/fragments/types/math_StarOffice_XML_Math.xcu new file mode 100644 index 000000000000..0a5b6db26f77 --- /dev/null +++ b/filter/source/config/fragments/types/math_StarOffice_XML_Math.xcu @@ -0,0 +1,12 @@ + <node oor:name="math_StarOffice_XML_Math" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.math.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxm</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.math</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Math)</value></prop> + <prop oor:name="UIName"> + <value>%productname% %formatversion% Formel</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Math 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/met_OS2_Metafile.xcu b/filter/source/config/fragments/types/met_OS2_Metafile.xcu new file mode 100644 index 000000000000..256714f45474 --- /dev/null +++ b/filter/source/config/fragments/types/met_OS2_Metafile.xcu @@ -0,0 +1,12 @@ + <node oor:name="met_OS2_Metafile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>met</value></prop> + <prop oor:name="MediaType"><value>image/x-met</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MET - OS/2 Metafile</value></prop> + <prop oor:name="UIName"> + <value>MET - OS/2 Metafile</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/oxt_OpenOffice_Extension.xcu b/filter/source/config/fragments/types/oxt_OpenOffice_Extension.xcu new file mode 100644 index 000000000000..67b9ed70d517 --- /dev/null +++ b/filter/source/config/fragments/types/oxt_OpenOffice_Extension.xcu @@ -0,0 +1,12 @@ + <node oor:name="oxt_OpenOffice_Extension" oor:op="replace" > + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>oxt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="UIName"> + <value>OpenOffice Extension</value> + </prop> + <prop oor:name="ClipboardFormat"/> + <prop oor:name="DetectService"><value>com.sun.star.comp.framework.OXTFileHandler</value></prop> + <prop oor:name="PreferredFilter"/> + </node> diff --git a/filter/source/config/fragments/types/pbm_Portable_Bitmap.xcu b/filter/source/config/fragments/types/pbm_Portable_Bitmap.xcu new file mode 100644 index 000000000000..4617f54440d4 --- /dev/null +++ b/filter/source/config/fragments/types/pbm_Portable_Bitmap.xcu @@ -0,0 +1,12 @@ + <node oor:name="pbm_Portable_Bitmap" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pbm</value></prop> + <prop oor:name="MediaType"><value>image/x-portable-bitmap</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PBM - Portable Bitmap</value></prop> + <prop oor:name="UIName"> + <value>PBM - Portable Bitmap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pcd_Photo_CD_Base.xcu b/filter/source/config/fragments/types/pcd_Photo_CD_Base.xcu new file mode 100644 index 000000000000..2888c0f0ba46 --- /dev/null +++ b/filter/source/config/fragments/types/pcd_Photo_CD_Base.xcu @@ -0,0 +1,12 @@ + <node oor:name="pcd_Photo_CD_Base" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pcd</value></prop> + <prop oor:name="MediaType"><value>image/x-photo-cd</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw_PCD_Photo_CD_Base</value></prop> + <prop oor:name="UIName"> + <value>PCD - Photo CD Base</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pcd_Photo_CD_Base16.xcu b/filter/source/config/fragments/types/pcd_Photo_CD_Base16.xcu new file mode 100644 index 000000000000..e7bcee7e4c4c --- /dev/null +++ b/filter/source/config/fragments/types/pcd_Photo_CD_Base16.xcu @@ -0,0 +1,12 @@ + <node oor:name="pcd_Photo_CD_Base16" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pcd</value></prop> + <prop oor:name="MediaType"><value>image/x-photo-cd</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw_PCD_Photo_CD_Base16</value></prop> + <prop oor:name="UIName"> + <value>PCD - Photo CD Base16</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pcd_Photo_CD_Base4.xcu b/filter/source/config/fragments/types/pcd_Photo_CD_Base4.xcu new file mode 100644 index 000000000000..966a77a47c73 --- /dev/null +++ b/filter/source/config/fragments/types/pcd_Photo_CD_Base4.xcu @@ -0,0 +1,12 @@ + <node oor:name="pcd_Photo_CD_Base4" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pcd</value></prop> + <prop oor:name="MediaType"><value>image/x-photo-cd</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>draw_PCD_Photo_CD_Base4</value></prop> + <prop oor:name="UIName"> + <value>PCD - Photo CD Base4</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pct_Mac_Pict.xcu b/filter/source/config/fragments/types/pct_Mac_Pict.xcu new file mode 100644 index 000000000000..b15ffded9dfe --- /dev/null +++ b/filter/source/config/fragments/types/pct_Mac_Pict.xcu @@ -0,0 +1,12 @@ + <node oor:name="pct_Mac_Pict" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pct pict</value></prop> + <prop oor:name="MediaType"><value>image/x-pict</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PCT - Mac Pict</value></prop> + <prop oor:name="UIName"> + <value>PCT - Mac Pict</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pcx_Zsoft_Paintbrush.xcu b/filter/source/config/fragments/types/pcx_Zsoft_Paintbrush.xcu new file mode 100644 index 000000000000..c4fa34f4d3e2 --- /dev/null +++ b/filter/source/config/fragments/types/pcx_Zsoft_Paintbrush.xcu @@ -0,0 +1,12 @@ + <node oor:name="pcx_Zsoft_Paintbrush" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pcx</value></prop> + <prop oor:name="MediaType"><value>image/x-pcx</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PCX - Zsoft Paintbrush</value></prop> + <prop oor:name="UIName"> + <value>PCX - Zsoft Paintbrush</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pdf_Portable_Document_Format.xcu b/filter/source/config/fragments/types/pdf_Portable_Document_Format.xcu new file mode 100644 index 000000000000..64a09cfc087a --- /dev/null +++ b/filter/source/config/fragments/types/pdf_Portable_Document_Format.xcu @@ -0,0 +1,12 @@ + <node oor:name="pdf_Portable_Document_Format" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pdf</value></prop> + <prop oor:name="MediaType"><value>application/pdf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>PDF - Portable Document Format</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pgm_Portable_Graymap.xcu b/filter/source/config/fragments/types/pgm_Portable_Graymap.xcu new file mode 100644 index 000000000000..35605a54f307 --- /dev/null +++ b/filter/source/config/fragments/types/pgm_Portable_Graymap.xcu @@ -0,0 +1,12 @@ + <node oor:name="pgm_Portable_Graymap" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pgm</value></prop> + <prop oor:name="MediaType"><value>image/x-portable-graymap</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PGM - Portable Graymap</value></prop> + <prop oor:name="UIName"> + <value>PGM - Portable Graymap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/png_Portable_Network_Graphic.xcu b/filter/source/config/fragments/types/png_Portable_Network_Graphic.xcu new file mode 100644 index 000000000000..e95b961c601b --- /dev/null +++ b/filter/source/config/fragments/types/png_Portable_Network_Graphic.xcu @@ -0,0 +1,12 @@ + <node oor:name="png_Portable_Network_Graphic" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>png</value></prop> + <prop oor:name="MediaType"><value>image/png</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PNG - Portable Network Graphic</value></prop> + <prop oor:name="UIName"> + <value>PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/ppm_Portable_Pixelmap.xcu b/filter/source/config/fragments/types/ppm_Portable_Pixelmap.xcu new file mode 100644 index 000000000000..62d9ac07d723 --- /dev/null +++ b/filter/source/config/fragments/types/ppm_Portable_Pixelmap.xcu @@ -0,0 +1,12 @@ + <node oor:name="ppm_Portable_Pixelmap" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ppm</value></prop> + <prop oor:name="MediaType"><value>image/x-portable-pixmap</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PPM - Portable Pixelmap</value></prop> + <prop oor:name="UIName"> + <value>PPM - Portable Pixelmap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/psd_Adobe_Photoshop.xcu b/filter/source/config/fragments/types/psd_Adobe_Photoshop.xcu new file mode 100644 index 000000000000..ad4ce367bb18 --- /dev/null +++ b/filter/source/config/fragments/types/psd_Adobe_Photoshop.xcu @@ -0,0 +1,12 @@ + <node oor:name="psd_Adobe_Photoshop" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>psd</value></prop> + <prop oor:name="MediaType"><value>image/vnd.adobe.photoshop</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PSD - Adobe Photoshop</value></prop> + <prop oor:name="UIName"> + <value>PSD - Adobe Photoshop</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/pwp_PlaceWare.xcu b/filter/source/config/fragments/types/pwp_PlaceWare.xcu new file mode 100644 index 000000000000..6bcd5e6ae86e --- /dev/null +++ b/filter/source/config/fragments/types/pwp_PlaceWare.xcu @@ -0,0 +1,12 @@ + <node oor:name="pwp_PlaceWare" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pwp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>PWP - PlaceWare</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/ras_Sun_Rasterfile.xcu b/filter/source/config/fragments/types/ras_Sun_Rasterfile.xcu new file mode 100644 index 000000000000..aa4ae085b13e --- /dev/null +++ b/filter/source/config/fragments/types/ras_Sun_Rasterfile.xcu @@ -0,0 +1,12 @@ + <node oor:name="ras_Sun_Rasterfile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ras</value></prop> + <prop oor:name="MediaType"><value>image/x-cmu-raster</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>RAS - Sun Rasterfile</value></prop> + <prop oor:name="UIName"> + <value>RAS - Sun Raster Image</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/sgf_StarOffice_Writer_SGF.xcu b/filter/source/config/fragments/types/sgf_StarOffice_Writer_SGF.xcu new file mode 100644 index 000000000000..c0e8c5aba4df --- /dev/null +++ b/filter/source/config/fragments/types/sgf_StarOffice_Writer_SGF.xcu @@ -0,0 +1,12 @@ + <node oor:name="sgf_StarOffice_Writer_SGF" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sgf</value></prop> + <prop oor:name="MediaType"><value>image/x-sgf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>SGF - StarOffice Writer SGF</value></prop> + <prop oor:name="UIName"> + <value>SGF - StarWriter SGF</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/sgv_StarDraw_20.xcu b/filter/source/config/fragments/types/sgv_StarDraw_20.xcu new file mode 100644 index 000000000000..c4778a602111 --- /dev/null +++ b/filter/source/config/fragments/types/sgv_StarDraw_20.xcu @@ -0,0 +1,12 @@ + <node oor:name="sgv_StarDraw_20" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sgv</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>SGV - StarDraw 2.0</value></prop> + <prop oor:name="UIName"> + <value>SGV - StarDraw 2.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/svg_Scalable_Vector_Graphics.xcu b/filter/source/config/fragments/types/svg_Scalable_Vector_Graphics.xcu new file mode 100644 index 000000000000..37643df4c7ec --- /dev/null +++ b/filter/source/config/fragments/types/svg_Scalable_Vector_Graphics.xcu @@ -0,0 +1,12 @@ + <node oor:name="svg_Scalable_Vector_Graphics" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>svg</value></prop> + <prop oor:name="MediaType"><value>image/svg+xml</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"/> + <prop oor:name="UIName"> + <value>SVG - Scalable Vector Graphics</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/svm_StarView_Metafile.xcu b/filter/source/config/fragments/types/svm_StarView_Metafile.xcu new file mode 100644 index 000000000000..d7e52dbbb11a --- /dev/null +++ b/filter/source/config/fragments/types/svm_StarView_Metafile.xcu @@ -0,0 +1,12 @@ + <node oor:name="svm_StarView_Metafile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>svm</value></prop> + <prop oor:name="MediaType"><value>image/x-svm</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>SVM - StarView Metafile</value></prop> + <prop oor:name="UIName"> + <value>SVM - StarView Meta File</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/tga_Truevision_TARGA.xcu b/filter/source/config/fragments/types/tga_Truevision_TARGA.xcu new file mode 100644 index 000000000000..178d75f47c4d --- /dev/null +++ b/filter/source/config/fragments/types/tga_Truevision_TARGA.xcu @@ -0,0 +1,12 @@ + <node oor:name="tga_Truevision_TARGA" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>tga</value></prop> + <prop oor:name="MediaType"><value>image/x-targa</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>TGA - Truevision TARGA</value></prop> + <prop oor:name="UIName"> + <value>TGA - Truevision Targa</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/tif_Tag_Image_File.xcu b/filter/source/config/fragments/types/tif_Tag_Image_File.xcu new file mode 100644 index 000000000000..e08689a65e79 --- /dev/null +++ b/filter/source/config/fragments/types/tif_Tag_Image_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="tif_Tag_Image_File" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>tif tiff</value></prop> + <prop oor:name="MediaType"><value>image/tiff</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>TIF - Tag Image File</value></prop> + <prop oor:name="UIName"> + <value>TIFF - Tagged Image File Format</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/wav_Wave_Audio_File.xcu b/filter/source/config/fragments/types/wav_Wave_Audio_File.xcu new file mode 100644 index 000000000000..b4e7d2e65149 --- /dev/null +++ b/filter/source/config/fragments/types/wav_Wave_Audio_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="wav_Wave_Audio_File" oor:op="replace" > + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wav</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="UIName"> + <value>Wave Audio File</value> + </prop> + <prop oor:name="ClipboardFormat"/> + <prop oor:name="DetectService"><value>com.sun.star.comp.framework.SoundHandler</value></prop> + <prop oor:name="PreferredFilter"/> + </node> diff --git a/filter/source/config/fragments/types/wmf_MS_Windows_Metafile.xcu b/filter/source/config/fragments/types/wmf_MS_Windows_Metafile.xcu new file mode 100644 index 000000000000..ef02dd3ce7a9 --- /dev/null +++ b/filter/source/config/fragments/types/wmf_MS_Windows_Metafile.xcu @@ -0,0 +1,12 @@ + <node oor:name="wmf_MS_Windows_Metafile" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wmf</value></prop> + <prop oor:name="MediaType"><value>image/x-wmf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WMF - MS Windows Metafile</value></prop> + <prop oor:name="UIName"> + <value>WMF - Windows Metafile</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer8.xcu b/filter/source/config/fragments/types/writer8.xcu new file mode 100644 index 000000000000..b57dbde222f2 --- /dev/null +++ b/filter/source/config/fragments/types/writer8.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer8" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/swriter</value></prop> + <prop oor:name="Extensions"><value>odt</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.text</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writer8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Writer 8</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer8_template.xcu b/filter/source/config/fragments/types/writer8_template.xcu new file mode 100644 index 000000000000..c9445969e37f --- /dev/null +++ b/filter/source/config/fragments/types/writer8_template.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer8_template" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ott</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.text-template</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>writer8_template</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Writer 8 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer 8 Template</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_Ami_Pro_1x_31_W4W.xcu b/filter/source/config/fragments/types/writer_Ami_Pro_1x_31_W4W.xcu new file mode 100644 index 000000000000..4d038674fd61 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Ami_Pro_1x_31_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Ami_Pro_1x_31_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sam</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Ami Pro 1.x-3.1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Ami Pro 1.x-3.1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_AportisDoc_PalmDB_File.xcu b/filter/source/config/fragments/types/writer_AportisDoc_PalmDB_File.xcu new file mode 100644 index 000000000000..516d9da0eeaf --- /dev/null +++ b/filter/source/config/fragments/types/writer_AportisDoc_PalmDB_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_AportisDoc_PalmDB_File" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>pdb</value></prop> + <prop oor:name="MediaType"><value>application/x-aportisdoc</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>AportisDoc Palm DB</value></prop> + <prop oor:name="UIName"> + <value>AportisDoc (Palm)</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:TEXt</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_CTOS_DEF_W4W.xcu b/filter/source/config/fragments/types/writer_CTOS_DEF_W4W.xcu new file mode 100644 index 000000000000..15c789e075c9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_CTOS_DEF_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_CTOS_DEF_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>CTOS DEF (W4W)</value></prop> + <prop oor:name="UIName"> + <value>CTOS DEF</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Claris_Works_W4W.xcu b/filter/source/config/fragments/types/writer_Claris_Works_W4W.xcu new file mode 100644 index 000000000000..45bdcb1d792e --- /dev/null +++ b/filter/source/config/fragments/types/writer_Claris_Works_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Claris_Works_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>cwk</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Claris Works (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Claris Works</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DCAFFT_Final_Form_Text_W4W.xcu b/filter/source/config/fragments/types/writer_DCAFFT_Final_Form_Text_W4W.xcu new file mode 100644 index 000000000000..2773c1894d4c --- /dev/null +++ b/filter/source/config/fragments/types/writer_DCAFFT_Final_Form_Text_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DCAFFT_Final_Form_Text_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DCA/FFT-Final Form Text (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DCA/FFT-Final Form Text</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DCA_Revisable_Form_Text_W4W.xcu b/filter/source/config/fragments/types/writer_DCA_Revisable_Form_Text_W4W.xcu new file mode 100644 index 000000000000..90408305cc91 --- /dev/null +++ b/filter/source/config/fragments/types/writer_DCA_Revisable_Form_Text_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DCA_Revisable_Form_Text_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DCA Revisable Form Text (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DCA Revisable Form Text</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DCA_with_Display_Write_5_W4W.xcu b/filter/source/config/fragments/types/writer_DCA_with_Display_Write_5_W4W.xcu new file mode 100644 index 000000000000..e7d57d65fe97 --- /dev/null +++ b/filter/source/config/fragments/types/writer_DCA_with_Display_Write_5_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DCA_with_Display_Write_5_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DCA with Display Write 5 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DCA with Display Write 5</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DEC_DX_W4W.xcu b/filter/source/config/fragments/types/writer_DEC_DX_W4W.xcu new file mode 100644 index 000000000000..d0004b6fa90d --- /dev/null +++ b/filter/source/config/fragments/types/writer_DEC_DX_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DEC_DX_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DEC DX (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DEC DX</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DEC_WPS_PLUS_W4W.xcu b/filter/source/config/fragments/types/writer_DEC_WPS_PLUS_W4W.xcu new file mode 100644 index 000000000000..7a1f5107a162 --- /dev/null +++ b/filter/source/config/fragments/types/writer_DEC_WPS_PLUS_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DEC_WPS_PLUS_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DEC WPS-PLUS (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DEC WPS-PLUS</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DataGeneral_CEO_Write_W4W.xcu b/filter/source/config/fragments/types/writer_DataGeneral_CEO_Write_W4W.xcu new file mode 100644 index 000000000000..52feca7ffba7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_DataGeneral_CEO_Write_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DataGeneral_CEO_Write_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DataGeneral CEO Write (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DataGeneral CEO Write</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DisplayWrite_20_4x_W4W.xcu b/filter/source/config/fragments/types/writer_DisplayWrite_20_4x_W4W.xcu new file mode 100644 index 000000000000..5fda4a2c89bf --- /dev/null +++ b/filter/source/config/fragments/types/writer_DisplayWrite_20_4x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DisplayWrite_20_4x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DisplayWrite 2.0-4.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DisplayWrite 2.0-4.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DisplayWrite_5x_W4W.xcu b/filter/source/config/fragments/types/writer_DisplayWrite_5x_W4W.xcu new file mode 100644 index 000000000000..a88fd8cdc55c --- /dev/null +++ b/filter/source/config/fragments/types/writer_DisplayWrite_5x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DisplayWrite_5x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DisplayWrite 5.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>DisplayWrite 5.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_DocBook_File.xcu b/filter/source/config/fragments/types/writer_DocBook_File.xcu new file mode 100644 index 000000000000..f68a64cdc8e6 --- /dev/null +++ b/filter/source/config/fragments/types/writer_DocBook_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_DocBook_File" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xml</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>DocBook File</value></prop> + <prop oor:name="UIName"> + <value>DocBook</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:-//OASIS//DTD DocBook XML V4</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_EBCDIC_W4W.xcu b/filter/source/config/fragments/types/writer_EBCDIC_W4W.xcu new file mode 100644 index 000000000000..d42dafa29c32 --- /dev/null +++ b/filter/source/config/fragments/types/writer_EBCDIC_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_EBCDIC_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>EBCDIC (W4W)</value></prop> + <prop oor:name="UIName"> + <value>EBCDIC</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Enable_W4W.xcu b/filter/source/config/fragments/types/writer_Enable_W4W.xcu new file mode 100644 index 000000000000..00deca734423 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Enable_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Enable_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpf</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Enable (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Enable</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Frame_Maker_MIF_30_W4W.xcu b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_30_W4W.xcu new file mode 100644 index 000000000000..549fc4f3c2d9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Frame_Maker_MIF_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>mif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Frame Maker MIF 3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Frame Maker Melse if 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Frame_Maker_MIF_40_W4W.xcu b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_40_W4W.xcu new file mode 100644 index 000000000000..6c77a7a22d13 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_40_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Frame_Maker_MIF_40_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>mif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Frame Maker MIF 4.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Frame Maker Melse if 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Frame_Maker_MIF_50_W4W.xcu b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_50_W4W.xcu new file mode 100644 index 000000000000..fa650910597a --- /dev/null +++ b/filter/source/config/fragments/types/writer_Frame_Maker_MIF_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Frame_Maker_MIF_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>mif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Frame Maker MIF 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Frame Maker Melse if 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Frame_Work_III_W4W.xcu b/filter/source/config/fragments/types/writer_Frame_Work_III_W4W.xcu new file mode 100644 index 000000000000..0982e6413cd4 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Frame_Work_III_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Frame_Work_III_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>fw3</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Frame Work III (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Frame Work III</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Frame_Work_IV_W4W.xcu b/filter/source/config/fragments/types/writer_Frame_Work_IV_W4W.xcu new file mode 100644 index 000000000000..93cbc6b4edcd --- /dev/null +++ b/filter/source/config/fragments/types/writer_Frame_Work_IV_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Frame_Work_IV_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>fw4</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Frame Work IV (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Frame Work IV</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_HP_AdvanceWrite_Plus_W4W.xcu b/filter/source/config/fragments/types/writer_HP_AdvanceWrite_Plus_W4W.xcu new file mode 100644 index 000000000000..353c3f23562c --- /dev/null +++ b/filter/source/config/fragments/types/writer_HP_AdvanceWrite_Plus_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_HP_AdvanceWrite_Plus_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>hpp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>HP AdvanceWrite Plus (W4W)</value></prop> + <prop oor:name="UIName"> + <value>HP AdvanceWrite Plus</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_ICL_Office_Power_6_W4W.xcu b/filter/source/config/fragments/types/writer_ICL_Office_Power_6_W4W.xcu new file mode 100644 index 000000000000..9f860e62805d --- /dev/null +++ b/filter/source/config/fragments/types/writer_ICL_Office_Power_6_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_ICL_Office_Power_6_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>ICL Office Power 6 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>ICL Office Power 6</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_ICL_Office_Power_7_W4W.xcu b/filter/source/config/fragments/types/writer_ICL_Office_Power_7_W4W.xcu new file mode 100644 index 000000000000..9f9187f51230 --- /dev/null +++ b/filter/source/config/fragments/types/writer_ICL_Office_Power_7_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_ICL_Office_Power_7_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>ICL Office Power 7 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>ICL Office Power 7</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Interleaf_5_6_W4W.xcu b/filter/source/config/fragments/types/writer_Interleaf_5_6_W4W.xcu new file mode 100644 index 000000000000..fbace2175c37 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Interleaf_5_6_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Interleaf_5_6_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Interleaf 5 - 6 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Interleaf 5 - 6</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Interleaf_W4W.xcu b/filter/source/config/fragments/types/writer_Interleaf_W4W.xcu new file mode 100644 index 000000000000..c29ef426e16b --- /dev/null +++ b/filter/source/config/fragments/types/writer_Interleaf_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Interleaf_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Interleaf (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Interleaf</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Legacy_Winstar_onGO_W4W.xcu b/filter/source/config/fragments/types/writer_Legacy_Winstar_onGO_W4W.xcu new file mode 100644 index 000000000000..c58f7a14818e --- /dev/null +++ b/filter/source/config/fragments/types/writer_Legacy_Winstar_onGO_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Legacy_Winstar_onGO_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>nvo</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Legacy Winstar onGO (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Legacy Winstar onGO</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_DOS_StarWriter.xcu b/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_DOS_StarWriter.xcu new file mode 100644 index 000000000000..0fa4e36a26b6 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_DOS_StarWriter.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Lotus_1_2_3_10_DOS_StarWriter" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wk1 wks</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Lotus 1-2-3 1.0 (DOS) (StarWriter)</value></prop> + <prop oor:name="UIName"> + <value>Lotus 1-2-3 1.0 (DOS) (%productname% %formatversion% Writer)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_WIN_StarWriter.xcu b/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_WIN_StarWriter.xcu new file mode 100644 index 000000000000..285202b5f650 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Lotus_1_2_3_10_WIN_StarWriter.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Lotus_1_2_3_10_WIN_StarWriter" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wk1 wks</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Lotus 1-2-3 1.0 (WIN) (StarWriter)</value></prop> + <prop oor:name="UIName"> + <value>Lotus 1-2-3 1.0 (WIN) (%productname% %formatversion% Writer)</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Lotus_Manuscript_W4W.xcu b/filter/source/config/fragments/types/writer_Lotus_Manuscript_W4W.xcu new file mode 100644 index 000000000000..b2c7d63d901b --- /dev/null +++ b/filter/source/config/fragments/types/writer_Lotus_Manuscript_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Lotus_Manuscript_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Lotus Manuscript (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Lotus Manuscript</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MASS_11_Rel_80_83_W4W.xcu b/filter/source/config/fragments/types/writer_MASS_11_Rel_80_83_W4W.xcu new file mode 100644 index 000000000000..da2fbcb93ccd --- /dev/null +++ b/filter/source/config/fragments/types/writer_MASS_11_Rel_80_83_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MASS_11_Rel_80_83_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MASS 11 Rel. 8.0-8.3 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MASS 11 Rel. 8.0-8.3</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MASS_11_Rel_85_90_W4W.xcu b/filter/source/config/fragments/types/writer_MASS_11_Rel_85_90_W4W.xcu new file mode 100644 index 000000000000..9d1169e2203d --- /dev/null +++ b/filter/source/config/fragments/types/writer_MASS_11_Rel_85_90_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MASS_11_Rel_85_90_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MASS 11 Rel. 8.5-9.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MASS 11 Rel. 8.5-9.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MIZI_Hwp_97.xcu b/filter/source/config/fragments/types/writer_MIZI_Hwp_97.xcu new file mode 100644 index 000000000000..53678e381517 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MIZI_Hwp_97.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MIZI_Hwp_97" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>hwp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writer_MIZI_Hwp_97</value></prop> + <prop oor:name="UIName"> + <value>Hangul WP 97</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_MacWord_30_W4W.xcu b/filter/source/config/fragments/types/writer_MS_MacWord_30_W4W.xcu new file mode 100644 index 000000000000..0a5642d39466 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_MacWord_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_MacWord_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS MacWord 3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft MacWord 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_MacWord_40_W4W.xcu b/filter/source/config/fragments/types/writer_MS_MacWord_40_W4W.xcu new file mode 100644 index 000000000000..1858a9bb8cef --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_MacWord_40_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_MacWord_40_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS MacWord 4.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft MacWord 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_MacWord_5x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_MacWord_5x_W4W.xcu new file mode 100644 index 000000000000..038ca2c8cdd9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_MacWord_5x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_MacWord_5x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS MacWord 5.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft MacWord 5.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_WinWord_1x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_WinWord_1x_W4W.xcu new file mode 100644 index 000000000000..ba3e0a1f6942 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_WinWord_1x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_WinWord_1x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS WinWord 1.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft WinWord 1.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_WinWord_2x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_WinWord_2x_W4W.xcu new file mode 100644 index 000000000000..9b026ac45503 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_WinWord_2x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_WinWord_2x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS WinWord 2.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft WinWord 2.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_WinWord_5.xcu b/filter/source/config/fragments/types/writer_MS_WinWord_5.xcu new file mode 100644 index 000000000000..5c8993c9c789 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_WinWord_5.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_WinWord_5" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS WinWord 5</value></prop> + <prop oor:name="UIName"> + <value>Microsoft WinWord 5</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_WinWord_60.xcu b/filter/source/config/fragments/types/writer_MS_WinWord_60.xcu new file mode 100644 index 000000000000..e56079d92ba5 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_WinWord_60.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_WinWord_60" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS WinWord 6.0</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_2003_XML.xcu b/filter/source/config/fragments/types/writer_MS_Word_2003_XML.xcu new file mode 100644 index 000000000000..003b5870773c --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_2003_XML.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_2003_XML" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xml</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 2003 XML</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Word 2003 XML</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:wordDocument</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu new file mode 100644 index 000000000000..53a7f5b74ead --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_2007" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>docx docm</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 2007 XML</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 2007 XML</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu new file mode 100644 index 000000000000..c0ec68200f22 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_2007_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dotx dotm</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 2007 XML Template</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 2007 XML Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_3x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Word_3x_W4W.xcu new file mode 100644 index 000000000000..9e938137690a --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_3x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_3x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 3.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 3.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_4x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Word_4x_W4W.xcu new file mode 100644 index 000000000000..fc6eaf12b9dc --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_4x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_4x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 4.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 4.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_5x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Word_5x_W4W.xcu new file mode 100644 index 000000000000..0d43e21b5577 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_5x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_5x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 5.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 5.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_6x_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Word_6x_W4W.xcu new file mode 100644 index 000000000000..6ab45081e712 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_6x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_6x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 6.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 6.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_95.xcu b/filter/source/config/fragments/types/writer_MS_Word_95.xcu new file mode 100644 index 000000000000..3cb66bd5716e --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_95.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_95" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 95</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 95</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_95_Vorlage.xcu b/filter/source/config/fragments/types/writer_MS_Word_95_Vorlage.xcu new file mode 100644 index 000000000000..138130b57602 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_95_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_95_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dot</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 95 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>MS Word 95 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_97.xcu b/filter/source/config/fragments/types/writer_MS_Word_97.xcu new file mode 100644 index 000000000000..911beb123e04 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_97.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_97" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 97</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Word 97/2000/XP</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Word_97_Vorlage.xcu b/filter/source/config/fragments/types/writer_MS_Word_97_Vorlage.xcu new file mode 100644 index 000000000000..46b3b9b03b46 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Word_97_Vorlage.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Word_97_Vorlage" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dot</value></prop> + <prop oor:name="MediaType"><value>application/msword</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Word 97 Vorlage</value></prop> + <prop oor:name="UIName"> + <value>MS Word 97/2000 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Works_20_DOS_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Works_20_DOS_W4W.xcu new file mode 100644 index 000000000000..3c404b350300 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Works_20_DOS_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Works_20_DOS_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wks</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Works 2.0 DOS (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Works 2.0 DOS</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Works_30_Win_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Works_30_Win_W4W.xcu new file mode 100644 index 000000000000..bceaf7e9fc0f --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Works_30_Win_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Works_30_Win_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wps</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Works 3.0 Win (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Works 3.0 Windows</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MS_Works_40_Mac_W4W.xcu b/filter/source/config/fragments/types/writer_MS_Works_40_Mac_W4W.xcu new file mode 100644 index 000000000000..f1b17496f0bd --- /dev/null +++ b/filter/source/config/fragments/types/writer_MS_Works_40_Mac_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MS_Works_40_Mac_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wks</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MS Works 4.0 Mac (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Microsoft Works 4.0 Mac</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Mac_Write_4x_50_W4W.xcu b/filter/source/config/fragments/types/writer_Mac_Write_4x_50_W4W.xcu new file mode 100644 index 000000000000..a8dba50134d9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Mac_Write_4x_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Mac_Write_4x_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Mac Write 4.x 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Mac Write 4.x 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Mac_Write_II_W4W.xcu b/filter/source/config/fragments/types/writer_Mac_Write_II_W4W.xcu new file mode 100644 index 000000000000..f5d7f54190c3 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Mac_Write_II_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Mac_Write_II_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Mac Write II (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Mac Write II</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Mac_Write_Pro_W4W.xcu b/filter/source/config/fragments/types/writer_Mac_Write_Pro_W4W.xcu new file mode 100644 index 000000000000..e50afdf9e97a --- /dev/null +++ b/filter/source/config/fragments/types/writer_Mac_Write_Pro_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Mac_Write_Pro_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Mac Write Pro (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Mac Write Pro</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MultiMate_33_W4W.xcu b/filter/source/config/fragments/types/writer_MultiMate_33_W4W.xcu new file mode 100644 index 000000000000..1046b796134d --- /dev/null +++ b/filter/source/config/fragments/types/writer_MultiMate_33_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MultiMate_33_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MultiMate 3.3 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MultiMate 3.3</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MultiMate_4_W4W.xcu b/filter/source/config/fragments/types/writer_MultiMate_4_W4W.xcu new file mode 100644 index 000000000000..bd96a8a8b838 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MultiMate_4_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MultiMate_4_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>dox</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MultiMate 4 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MultiMate 4</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MultiMate_Adv_36_W4W.xcu b/filter/source/config/fragments/types/writer_MultiMate_Adv_36_W4W.xcu new file mode 100644 index 000000000000..8c962e59bae7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_MultiMate_Adv_36_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MultiMate_Adv_36_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MultiMate Adv. 3.6 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MultiMate Adv. 3.6</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_MultiMate_Adv_II_37_W4W.xcu b/filter/source/config/fragments/types/writer_MultiMate_Adv_II_37_W4W.xcu new file mode 100644 index 000000000000..9106dee7e95f --- /dev/null +++ b/filter/source/config/fragments/types/writer_MultiMate_Adv_II_37_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_MultiMate_Adv_II_37_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>MultiMate Adv. II 3.7 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>MultiMate Adv. II 3.7</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_NAVY_DIF_W4W.xcu b/filter/source/config/fragments/types/writer_NAVY_DIF_W4W.xcu new file mode 100644 index 000000000000..c55ed5f34d43 --- /dev/null +++ b/filter/source/config/fragments/types/writer_NAVY_DIF_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_NAVY_DIF_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>NAVY DIF (W4W)</value></prop> + <prop oor:name="UIName"> + <value>NAVY DIF</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_OfficeWriter_40_W4W.xcu b/filter/source/config/fragments/types/writer_OfficeWriter_40_W4W.xcu new file mode 100644 index 000000000000..58e11ed9ee39 --- /dev/null +++ b/filter/source/config/fragments/types/writer_OfficeWriter_40_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_OfficeWriter_40_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>OfficeWriter 4.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>OfficeWriter 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_OfficeWriter_50_W4W.xcu b/filter/source/config/fragments/types/writer_OfficeWriter_50_W4W.xcu new file mode 100644 index 000000000000..895e78c36d40 --- /dev/null +++ b/filter/source/config/fragments/types/writer_OfficeWriter_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_OfficeWriter_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>OfficeWriter 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>OfficeWriter 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_OfficeWriter_6x_W4W.xcu b/filter/source/config/fragments/types/writer_OfficeWriter_6x_W4W.xcu new file mode 100644 index 000000000000..80befadbc319 --- /dev/null +++ b/filter/source/config/fragments/types/writer_OfficeWriter_6x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_OfficeWriter_6x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wp</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>OfficeWriter 6.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>OfficeWriter 6.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_PFS_First_Choice_10_W4W.xcu b/filter/source/config/fragments/types/writer_PFS_First_Choice_10_W4W.xcu new file mode 100644 index 000000000000..783b40243c9f --- /dev/null +++ b/filter/source/config/fragments/types/writer_PFS_First_Choice_10_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_PFS_First_Choice_10_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PFS First Choice 1.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS First Choice 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_PFS_First_Choice_20_W4W.xcu b/filter/source/config/fragments/types/writer_PFS_First_Choice_20_W4W.xcu new file mode 100644 index 000000000000..de4655924c1e --- /dev/null +++ b/filter/source/config/fragments/types/writer_PFS_First_Choice_20_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_PFS_First_Choice_20_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PFS First Choice 2.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS First Choice 2.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_PFS_First_Choice_30_W4W.xcu b/filter/source/config/fragments/types/writer_PFS_First_Choice_30_W4W.xcu new file mode 100644 index 000000000000..5ee28be8be41 --- /dev/null +++ b/filter/source/config/fragments/types/writer_PFS_First_Choice_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_PFS_First_Choice_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PFS First Choice 3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS First Choice 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_PFS_Write_W4W.xcu b/filter/source/config/fragments/types/writer_PFS_Write_W4W.xcu new file mode 100644 index 000000000000..44c867e1daee --- /dev/null +++ b/filter/source/config/fragments/types/writer_PFS_Write_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_PFS_Write_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PFS Write (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS Write</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Peach_Text_W4W.xcu b/filter/source/config/fragments/types/writer_Peach_Text_W4W.xcu new file mode 100644 index 000000000000..3388860e62e8 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Peach_Text_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Peach_Text_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Peach Text (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Peach Text</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_PocketWord_File.xcu b/filter/source/config/fragments/types/writer_PocketWord_File.xcu new file mode 100644 index 000000000000..61c50a935dbc --- /dev/null +++ b/filter/source/config/fragments/types/writer_PocketWord_File.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_PocketWord_File" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.filters.XMLFilterDetect</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>psw</value></prop> + <prop oor:name="MediaType"><value>application/x-pocket-word</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>PocketWord File</value></prop> + <prop oor:name="UIName"> + <value>Pocket Word</value> + </prop> + <prop oor:name="ClipboardFormat"><value>doctype:pwi</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_Professional_Write_10_W4W.xcu b/filter/source/config/fragments/types/writer_Professional_Write_10_W4W.xcu new file mode 100644 index 000000000000..f97f8cee9387 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Professional_Write_10_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Professional_Write_10_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Professional Write 1.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS Professional Write 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Professional_Write_2x_W4W.xcu b/filter/source/config/fragments/types/writer_Professional_Write_2x_W4W.xcu new file mode 100644 index 000000000000..7b6f2d8433c8 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Professional_Write_2x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Professional_Write_2x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Professional Write 2.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS Professional Write 2.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Professional_Write_Plus_W4W.xcu b/filter/source/config/fragments/types/writer_Professional_Write_Plus_W4W.xcu new file mode 100644 index 000000000000..f745ffd79dd0 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Professional_Write_Plus_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Professional_Write_Plus_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Professional Write Plus (W4W)</value></prop> + <prop oor:name="UIName"> + <value>PFS Professional Write Plus</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_QA_Write_10_30_W4W.xcu b/filter/source/config/fragments/types/writer_QA_Write_10_30_W4W.xcu new file mode 100644 index 000000000000..1c6723c51280 --- /dev/null +++ b/filter/source/config/fragments/types/writer_QA_Write_10_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_QA_Write_10_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>qw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Q&A Write 1.0-3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Q&A Write 1.0-3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_QA_Write_40_W4W.xcu b/filter/source/config/fragments/types/writer_QA_Write_40_W4W.xcu new file mode 100644 index 000000000000..d687fa4659eb --- /dev/null +++ b/filter/source/config/fragments/types/writer_QA_Write_40_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_QA_Write_40_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>qw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Q&A Write 4.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Q&A Write 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Rapid_File_10_W4W.xcu b/filter/source/config/fragments/types/writer_Rapid_File_10_W4W.xcu new file mode 100644 index 000000000000..3f04250df4f8 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Rapid_File_10_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Rapid_File_10_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Rapid File 1.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Rapid File 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Rapid_File_12_W4W.xcu b/filter/source/config/fragments/types/writer_Rapid_File_12_W4W.xcu new file mode 100644 index 000000000000..a3ba7198ed38 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Rapid_File_12_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Rapid_File_12_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Rapid File 1.2 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Rapid File 1.2</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Rich_Text_Format.xcu b/filter/source/config/fragments/types/writer_Rich_Text_Format.xcu new file mode 100644 index 000000000000..80f7e6c39797 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Rich_Text_Format.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Rich_Text_Format" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>rtf</value></prop> + <prop oor:name="MediaType"><value>application/rtf</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Rich Text Format</value></prop> + <prop oor:name="UIName"> + <value>Rich Text Format</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Samna_Word_IV_IV_Plus_W4W.xcu b/filter/source/config/fragments/types/writer_Samna_Word_IV_IV_Plus_W4W.xcu new file mode 100644 index 000000000000..6aab4e9bf9c8 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Samna_Word_IV_IV_Plus_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Samna_Word_IV_IV_Plus_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sw4</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Samna Word IV-IV Plus (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Samna Word IV-IV Plus</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_StarOffice_XML_Writer.xcu b/filter/source/config/fragments/types/writer_StarOffice_XML_Writer.xcu new file mode 100644 index 000000000000..09ebbf6b8224 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarOffice_XML_Writer.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarOffice_XML_Writer" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxw</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.writer</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarOffice XML (Writer)</value></prop> + <prop oor:name="UIName"> + <value>%productname% %formatversion% Textdokument</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarOffice_XML_Writer_Template.xcu b/filter/source/config/fragments/types/writer_StarOffice_XML_Writer_Template.xcu new file mode 100644 index 000000000000..1ad5271eadc5 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarOffice_XML_Writer_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarOffice_XML_Writer_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>stw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>writer_StarOffice_XML_Writer_Template</value></prop> + <prop oor:name="UIName"> + <value>Writer 6.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_10.xcu b/filter/source/config/fragments/types/writer_StarWriter_10.xcu new file mode 100644 index 000000000000..f5e55f95d46d --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_10.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_10" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 1.0</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_20.xcu b/filter/source/config/fragments/types/writer_StarWriter_20.xcu new file mode 100644 index 000000000000..d166b294803c --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_20.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_20" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 2.0</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 2.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_30.xcu b/filter/source/config/fragments/types/writer_StarWriter_30.xcu new file mode 100644 index 000000000000..5b8297f196d5 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_30.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_30" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdw</value></prop> + <prop oor:name="MediaType"><value>application/x-starwriter</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 3.0</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 3.0 (%productname% %formatversion% Globaldokument)</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 3.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_30_VorlageTemplate.xcu b/filter/source/config/fragments/types/writer_StarWriter_30_VorlageTemplate.xcu new file mode 100644 index 000000000000..ad4ee7d15628 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_30_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_30_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 3.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 3.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 3.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_40.xcu b/filter/source/config/fragments/types/writer_StarWriter_40.xcu new file mode 100644 index 000000000000..cb4148dd1032 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_40.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_40" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdw</value></prop> + <prop oor:name="MediaType"><value>application/x-starwriter</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 4.0</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 4.0 (%productname% %formatversion% Globaldokument)</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_40_VorlageTemplate.xcu b/filter/source/config/fragments/types/writer_StarWriter_40_VorlageTemplate.xcu new file mode 100644 index 000000000000..168c63b11b42 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_40_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_40_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 4.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 4.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_50.xcu b/filter/source/config/fragments/types/writer_StarWriter_50.xcu new file mode 100644 index 000000000000..d8aeeb6bd617 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_50.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_50" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sdw</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.writer</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 5.0</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 5.0 (%productname% %formatversion% Globaldokument)</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_50_VorlageTemplate.xcu b/filter/source/config/fragments/types/writer_StarWriter_50_VorlageTemplate.xcu new file mode 100644 index 000000000000..d46b510fc328 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_50_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_50_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 5.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_StarWriter_DOS.xcu b/filter/source/config/fragments/types/writer_StarWriter_DOS.xcu new file mode 100644 index 000000000000..00864caffe68 --- /dev/null +++ b/filter/source/config/fragments/types/writer_StarWriter_DOS.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_StarWriter_DOS" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter DOS</value></prop> + <prop oor:name="UIName"> + <value>StarWriter DOS</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_T602_Document.xcu b/filter/source/config/fragments/types/writer_T602_Document.xcu new file mode 100644 index 000000000000..c233c324bd3e --- /dev/null +++ b/filter/source/config/fragments/types/writer_T602_Document.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_T602_Document" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.Writer.T602ImportFilter</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>602 txt</value></prop> + <prop oor:name="MediaType"><value>application/x-t602</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>T602Document</value></prop> + <prop oor:name="UIName"> + <value>T602 Document</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Text.xcu b/filter/source/config/fragments/types/writer_Text.xcu new file mode 100644 index 000000000000..014c73d729b2 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Text.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Text" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"><value>text/plain</value></prop> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>Text</value></prop> + <prop oor:name="UIName"> + <value>Text</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Text_encoded.xcu b/filter/source/config/fragments/types/writer_Text_encoded.xcu new file mode 100644 index 000000000000..6959f61c4dba --- /dev/null +++ b/filter/source/config/fragments/types/writer_Text_encoded.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Text_encoded" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>txt</value></prop> + <prop oor:name="MediaType"><value>text/plain</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Text (encoded)</value></prop> + <prop oor:name="UIName"> + <value>Text - encoded</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Total_Word_W4W.xcu b/filter/source/config/fragments/types/writer_Total_Word_W4W.xcu new file mode 100644 index 000000000000..6af415b72d80 --- /dev/null +++ b/filter/source/config/fragments/types/writer_Total_Word_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Total_Word_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Total Word (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Total Word</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Uniplex_V7_V8_W4W.xcu b/filter/source/config/fragments/types/writer_Uniplex_V7_V8_W4W.xcu new file mode 100644 index 000000000000..6f3c7402dc3f --- /dev/null +++ b/filter/source/config/fragments/types/writer_Uniplex_V7_V8_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Uniplex_V7_V8_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Uniplex V7-V8 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Uniplex V7-V8</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Uniplex_onGO_W4W.xcu b/filter/source/config/fragments/types/writer_Uniplex_onGO_W4W.xcu new file mode 100644 index 000000000000..ee60b06a270e --- /dev/null +++ b/filter/source/config/fragments/types/writer_Uniplex_onGO_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Uniplex_onGO_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>nvo</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Uniplex onGO (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Uniplex onGO</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_VolksWriter_3_and_4_W4W.xcu b/filter/source/config/fragments/types/writer_VolksWriter_3_and_4_W4W.xcu new file mode 100644 index 000000000000..c37992e0322e --- /dev/null +++ b/filter/source/config/fragments/types/writer_VolksWriter_3_and_4_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_VolksWriter_3_and_4_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>VolksWriter 3 and 4 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>VolksWriter 3 and 4</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_VolksWriter_Deluxe_W4W.xcu b/filter/source/config/fragments/types/writer_VolksWriter_Deluxe_W4W.xcu new file mode 100644 index 000000000000..7df44a50309d --- /dev/null +++ b/filter/source/config/fragments/types/writer_VolksWriter_Deluxe_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_VolksWriter_Deluxe_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>VolksWriter Deluxe (W4W)</value></prop> + <prop oor:name="UIName"> + <value>VolksWriter Deluxe</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WITA_W4W.xcu b/filter/source/config/fragments/types/writer_WITA_W4W.xcu new file mode 100644 index 000000000000..b2c965e3c93f --- /dev/null +++ b/filter/source/config/fragments/types/writer_WITA_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WITA_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WITA (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WITA</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Wang_II_SWP_W4W.xcu b/filter/source/config/fragments/types/writer_Wang_II_SWP_W4W.xcu new file mode 100644 index 000000000000..3dc0fad0a37c --- /dev/null +++ b/filter/source/config/fragments/types/writer_Wang_II_SWP_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Wang_II_SWP_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Wang II SWP (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Wang II SWP</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Wang_PC_W4W.xcu b/filter/source/config/fragments/types/writer_Wang_PC_W4W.xcu new file mode 100644 index 000000000000..380d43c32c1b --- /dev/null +++ b/filter/source/config/fragments/types/writer_Wang_PC_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Wang_PC_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Wang PC (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Wang PC</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Wang_WP_Plus_W4W.xcu b/filter/source/config/fragments/types/writer_Wang_WP_Plus_W4W.xcu new file mode 100644 index 000000000000..6ec9fa5bf66e --- /dev/null +++ b/filter/source/config/fragments/types/writer_Wang_WP_Plus_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Wang_WP_Plus_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Wang WP Plus (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Wang WP Plus</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Win_Write_3x_W4W.xcu b/filter/source/config/fragments/types/writer_Win_Write_3x_W4W.xcu new file mode 100644 index 000000000000..bdd03bc7248a --- /dev/null +++ b/filter/source/config/fragments/types/writer_Win_Write_3x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Win_Write_3x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wri</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Win Write 3.x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Win Write 3.x</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WiziWord_30_W4W.xcu b/filter/source/config/fragments/types/writer_WiziWord_30_W4W.xcu new file mode 100644 index 000000000000..9db56666abbe --- /dev/null +++ b/filter/source/config/fragments/types/writer_WiziWord_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WiziWord_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WiziWord 3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WiziWord 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_41_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_41_W4W.xcu new file mode 100644 index 000000000000..ebff7aa049b9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_41_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_41_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 4.1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 4.1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_42_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_42_W4W.xcu new file mode 100644 index 000000000000..d45ed8db7e84 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_42_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_42_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 4.2 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 4.2</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_50_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_50_W4W.xcu new file mode 100644 index 000000000000..39020fe18326 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_51_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_51_W4W.xcu new file mode 100644 index 000000000000..215abbf68b4b --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_51_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_51_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 5.1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 5.1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_60_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_60_W4W.xcu new file mode 100644 index 000000000000..1437e283ca9a --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_60_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_60_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 6.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_61_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_61_W4W.xcu new file mode 100644 index 000000000000..c52456bddacb --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_61_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_61_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect 6.1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect 6.1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Document.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Document.xcu new file mode 100644 index 000000000000..3798319ca976 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Document.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Document" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.Writer.WordPerfectImportFilter</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>true</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect Document</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Mac_1_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Mac_1_W4W.xcu new file mode 100644 index 000000000000..f05ce9964707 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Mac_1_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Mac_1_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect Mac 1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect Mac 1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Mac_2_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Mac_2_W4W.xcu new file mode 100644 index 000000000000..3a5838f96cf7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Mac_2_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Mac_2_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect Mac 2 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect Mac 2</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Mac_3_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Mac_3_W4W.xcu new file mode 100644 index 000000000000..8dc35dc6eb30 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Mac_3_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Mac_3_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect Mac 3 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect Mac 3</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Win_51_52_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Win_51_52_W4W.xcu new file mode 100644 index 000000000000..aea69373a41e --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Win_51_52_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Win_51_52_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect (Win) 5.1-5.2 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect (Win) 5.1-5.2</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Win_60_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Win_60_W4W.xcu new file mode 100644 index 000000000000..b484283587c6 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Win_60_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Win_60_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect (Win) 6.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect (Win) 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Win_61_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Win_61_W4W.xcu new file mode 100644 index 000000000000..8926abcf4d36 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Win_61_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Win_61_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect (Win) 6.1 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect (Win) 6.1</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordPerfect_Win_70_W4W.xcu b/filter/source/config/fragments/types/writer_WordPerfect_Win_70_W4W.xcu new file mode 100644 index 000000000000..fca29da4d451 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordPerfect_Win_70_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordPerfect_Win_70_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wpd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordPerfect (Win) 7.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordPerfect (Win) 7.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_2000_Rel_30_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_2000_Rel_30_W4W.xcu new file mode 100644 index 000000000000..d3d6d3050253 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_2000_Rel_30_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_2000_Rel_30_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ws</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 2000 Rel. 3.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 2000 Rel. 3.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_2000_Rel_35_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_2000_Rel_35_W4W.xcu new file mode 100644 index 000000000000..fcf1875fb824 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_2000_Rel_35_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_2000_Rel_35_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>ws</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 2000 Rel. 3.5 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 2000 Rel. 3.5</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_33x_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_33x_W4W.xcu new file mode 100644 index 000000000000..0f5df15cd4a4 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_33x_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_33x_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 3.3x (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 3.3</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_345_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_345_W4W.xcu new file mode 100644 index 000000000000..2393cce4e21e --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_345_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_345_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 3.45 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 3.4</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_40_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_40_W4W.xcu new file mode 100644 index 000000000000..ff3e5cecd3f7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_40_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_40_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 4.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 4.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_50_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_50_W4W.xcu new file mode 100644 index 000000000000..9a18cefe2aee --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_55_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_55_W4W.xcu new file mode 100644 index 000000000000..ea0267411388 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_55_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_55_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 5.5 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 5.5</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_60_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_60_W4W.xcu new file mode 100644 index 000000000000..42b7413c1baa --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_60_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_60_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 6.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 6.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_70_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_70_W4W.xcu new file mode 100644 index 000000000000..18dbe3e99867 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_70_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_70_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar 7.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar 7.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WordStar_Win_1x_20_W4W.xcu b/filter/source/config/fragments/types/writer_WordStar_Win_1x_20_W4W.xcu new file mode 100644 index 000000000000..911edcee23cb --- /dev/null +++ b/filter/source/config/fragments/types/writer_WordStar_Win_1x_20_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WordStar_Win_1x_20_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>wsd</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WordStar (Win) 1.x-2.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WordStar (Win) 1.x-2.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_WriteNow_30_Macintosh_W4W.xcu b/filter/source/config/fragments/types/writer_WriteNow_30_Macintosh_W4W.xcu new file mode 100644 index 000000000000..9638b4ae4d66 --- /dev/null +++ b/filter/source/config/fragments/types/writer_WriteNow_30_Macintosh_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_WriteNow_30_Macintosh_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>WriteNow 3.0 (Macintosh) (W4W)</value></prop> + <prop oor:name="UIName"> + <value>WriteNow 3.0 Macintosh</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_Writing_Assistant_W4W.xcu b/filter/source/config/fragments/types/writer_Writing_Assistant_W4W.xcu new file mode 100644 index 000000000000..b8cf4728957a --- /dev/null +++ b/filter/source/config/fragments/types/writer_Writing_Assistant_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_Writing_Assistant_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>doc</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>Writing Assistant (W4W)</value></prop> + <prop oor:name="UIName"> + <value>Writing Assistant</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XEROX_XIF_50_Illustrator_W4W.xcu b/filter/source/config/fragments/types/writer_XEROX_XIF_50_Illustrator_W4W.xcu new file mode 100644 index 000000000000..4072bfca5dea --- /dev/null +++ b/filter/source/config/fragments/types/writer_XEROX_XIF_50_Illustrator_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XEROX_XIF_50_Illustrator_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XEROX XIF 5.0 (Illustrator) (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XEROX Xelse if 5.0 Illustrator</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XEROX_XIF_50_W4W.xcu b/filter/source/config/fragments/types/writer_XEROX_XIF_50_W4W.xcu new file mode 100644 index 000000000000..abb982f5ee37 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XEROX_XIF_50_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XEROX_XIF_50_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XEROX XIF 5.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XEROX Xelse if 5.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XEROX_XIF_60_Color_Bitmap_W4W.xcu b/filter/source/config/fragments/types/writer_XEROX_XIF_60_Color_Bitmap_W4W.xcu new file mode 100644 index 000000000000..eecea8188781 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XEROX_XIF_60_Color_Bitmap_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XEROX_XIF_60_Color_Bitmap_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XEROX XIF 6.0 (Color Bitmap) (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XEROX Xelse if 6.0 Color Bitmap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XEROX_XIF_60_Res_Graphic_W4W.xcu b/filter/source/config/fragments/types/writer_XEROX_XIF_60_Res_Graphic_W4W.xcu new file mode 100644 index 000000000000..6b023aee7a96 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XEROX_XIF_60_Res_Graphic_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XEROX_XIF_60_Res_Graphic_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xif</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XEROX XIF 6.0 (Res Graphic) (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XEROX Xelse if 6.0 Res Graphic</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_IIIP_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_IIIP_W4W.xcu new file mode 100644 index 000000000000..eff7cc2794f9 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_IIIP_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_IIIP_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite III+ ( W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite III+</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_III_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_III_W4W.xcu new file mode 100644 index 000000000000..d8218de40bf7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_III_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_III_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite III ( W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite III</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_IV_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_IV_W4W.xcu new file mode 100644 index 000000000000..b3e652285bc0 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_IV_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_IV_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite IV (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite IV</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_Sig_Win_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_Sig_Win_W4W.xcu new file mode 100644 index 000000000000..084b2adcc8c7 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_Sig_Win_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_Sig_Win_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite Sig. (Win) (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite Signature</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_Signature_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_Signature_W4W.xcu new file mode 100644 index 000000000000..c86cb3647278 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_Signature_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_Signature_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite Signature (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite Signature</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_XyWrite_Win_10_W4W.xcu b/filter/source/config/fragments/types/writer_XyWrite_Win_10_W4W.xcu new file mode 100644 index 000000000000..e570e578d338 --- /dev/null +++ b/filter/source/config/fragments/types/writer_XyWrite_Win_10_W4W.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_XyWrite_Win_10_W4W" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xyw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XyWrite (Win) 1.0 (W4W)</value></prop> + <prop oor:name="UIName"> + <value>XyWrite (Win) 1.0</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu b/filter/source/config/fragments/types/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu new file mode 100644 index 000000000000..e0efe4d21ccd --- /dev/null +++ b/filter/source/config/fragments/types/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_globaldocument_StarOffice_XML_Writer_GlobalDocument" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sxg</value></prop> + <prop oor:name="MediaType"><value>application/vnd.sun.xml.writer.global</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writer_globaldocument_StarOffice_XML_Writer_GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value>Writer 6.0 Master Document</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer/Global 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_globaldocument_StarWriter_40GlobalDocument.xcu b/filter/source/config/fragments/types/writer_globaldocument_StarWriter_40GlobalDocument.xcu new file mode 100644 index 000000000000..5f0f05204355 --- /dev/null +++ b/filter/source/config/fragments/types/writer_globaldocument_StarWriter_40GlobalDocument.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_globaldocument_StarWriter_40GlobalDocument" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sgl</value></prop> + <prop oor:name="MediaType"><value>application/x-starwriter</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 4.0/GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 4.0 Master Document</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter/Global 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_globaldocument_StarWriter_50GlobalDocument.xcu b/filter/source/config/fragments/types/writer_globaldocument_StarWriter_50GlobalDocument.xcu new file mode 100644 index 000000000000..0850c43becc6 --- /dev/null +++ b/filter/source/config/fragments/types/writer_globaldocument_StarWriter_50GlobalDocument.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_globaldocument_StarWriter_50GlobalDocument" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.sfx2.BinaryFormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>sgl</value></prop> + <prop oor:name="MediaType"><value>application/vnd.stardivision.writer-global</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter 5.0/GlobalDocument</value></prop> + <prop oor:name="UIName"> + <value>StarWriter 5.0 Master Document</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter/Global 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_web_HTML.xcu b/filter/source/config/fragments/types/writer_web_HTML.xcu new file mode 100644 index 000000000000..a1d9a0914ff5 --- /dev/null +++ b/filter/source/config/fragments/types/writer_web_HTML.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_web_HTML" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/swriter/web*</value></prop> + <prop oor:name="Extensions"><value>html htm</value></prop> + <prop oor:name="MediaType"><value>text/html</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>HTML</value></prop> + <prop oor:name="UIName"> + <value>HTML Document</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_web_HTML_help.xcu b/filter/source/config/fragments/types/writer_web_HTML_help.xcu new file mode 100644 index 000000000000..5394c7776bea --- /dev/null +++ b/filter/source/config/fragments/types/writer_web_HTML_help.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_web_HTML_help" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>vnd.sun.star.help://*</value></prop> + <prop oor:name="Extensions"/> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writer_web_HTML_help</value></prop> + <prop oor:name="UIName"> + <value>Help content</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/writer_web_StarOffice_XML_Writer_Web_Template.xcu b/filter/source/config/fragments/types/writer_web_StarOffice_XML_Writer_Web_Template.xcu new file mode 100644 index 000000000000..97fb23c1d3e2 --- /dev/null +++ b/filter/source/config/fragments/types/writer_web_StarOffice_XML_Writer_Web_Template.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_web_StarOffice_XML_Writer_Web_Template" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>stw</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writer_web_StarOffice_XML_Writer_Web_Template</value></prop> + <prop oor:name="UIName"> + <value>Writer/Web 6.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer/Web 6.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_web_StarWriterWeb_40_VorlageTemplate.xcu b/filter/source/config/fragments/types/writer_web_StarWriterWeb_40_VorlageTemplate.xcu new file mode 100644 index 000000000000..1e93d6411419 --- /dev/null +++ b/filter/source/config/fragments/types/writer_web_StarWriterWeb_40_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_web_StarWriterWeb_40_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter/Web 4.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarWriter/Web 4.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter/Web 4.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writer_web_StarWriterWeb_50_VorlageTemplate.xcu b/filter/source/config/fragments/types/writer_web_StarWriterWeb_50_VorlageTemplate.xcu new file mode 100644 index 000000000000..1cc98cad2e2e --- /dev/null +++ b/filter/source/config/fragments/types/writer_web_StarWriterWeb_50_VorlageTemplate.xcu @@ -0,0 +1,12 @@ + <node oor:name="writer_web_StarWriterWeb_50_VorlageTemplate" oor:op="replace" > + <prop oor:name="DetectService"/> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>vor</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>StarWriter/Web 5.0 Vorlage/Template</value></prop> + <prop oor:name="UIName"> + <value>StarWriter/Web 5.0 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>StarWriter/Web 5.0</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writerglobal8.xcu b/filter/source/config/fragments/types/writerglobal8.xcu new file mode 100644 index 000000000000..f9f32e7c6b5d --- /dev/null +++ b/filter/source/config/fragments/types/writerglobal8.xcu @@ -0,0 +1,12 @@ + <node oor:name="writerglobal8" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"><value>private:factory/swriter/GlobalDocument*</value></prop> + <prop oor:name="Extensions"><value>odm</value></prop> + <prop oor:name="MediaType"><value>application/vnd.oasis.opendocument.text-master</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writerglobal8</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Writer 8 Master Document</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer/Global 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/writerweb8_writer_template.xcu b/filter/source/config/fragments/types/writerweb8_writer_template.xcu new file mode 100644 index 000000000000..dbf9b45e0f6c --- /dev/null +++ b/filter/source/config/fragments/types/writerweb8_writer_template.xcu @@ -0,0 +1,12 @@ + <node oor:name="writerweb8_writer_template" oor:op="replace"> + <prop oor:name="DetectService"><value>com.sun.star.text.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>oth</value></prop> + <prop oor:name="MediaType"/> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>writerweb8_writer_template</value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">Writer/Web 8 Template</value> + </prop> + <prop oor:name="ClipboardFormat"><value>Writer/Web 8</value></prop> + </node> diff --git a/filter/source/config/fragments/types/xbm_X_Consortium.xcu b/filter/source/config/fragments/types/xbm_X_Consortium.xcu new file mode 100644 index 000000000000..948b77dea121 --- /dev/null +++ b/filter/source/config/fragments/types/xbm_X_Consortium.xcu @@ -0,0 +1,12 @@ + <node oor:name="xbm_X_Consortium" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xbm</value></prop> + <prop oor:name="MediaType"><value>image/x-xbitmap</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XBM - X-Consortium</value></prop> + <prop oor:name="UIName"> + <value>XBM - X Bitmap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/fragments/types/xpm_XPM.xcu b/filter/source/config/fragments/types/xpm_XPM.xcu new file mode 100644 index 000000000000..8361ec6ac313 --- /dev/null +++ b/filter/source/config/fragments/types/xpm_XPM.xcu @@ -0,0 +1,12 @@ + <node oor:name="xpm_XPM" oor:op="replace" > + <prop oor:name="DetectService"><value>com.sun.star.comp.draw.FormatDetector</value></prop> + <prop oor:name="URLPattern"/> + <prop oor:name="Extensions"><value>xpm</value></prop> + <prop oor:name="MediaType"><value>image/x-xpixmap</value></prop> + <prop oor:name="Preferred"><value>false</value></prop> + <prop oor:name="PreferredFilter"><value>XPM</value></prop> + <prop oor:name="UIName"> + <value>XPM - X PixMap</value> + </prop> + <prop oor:name="ClipboardFormat"/> + </node> diff --git a/filter/source/config/tools/Manifest.mf b/filter/source/config/tools/Manifest.mf new file mode 100644 index 000000000000..91387715ae71 --- /dev/null +++ b/filter/source/config/tools/Manifest.mf @@ -0,0 +1,4 @@ +Manifest-Version: 1.0 +Created-By: Sun Microsystems, Inc. +Main-Class: MergeApp +Class-Path: . diff --git a/filter/source/config/tools/merge/pyAltFCFGMerge b/filter/source/config/tools/merge/pyAltFCFGMerge new file mode 100755 index 000000000000..a44a4bb81d29 --- /dev/null +++ b/filter/source/config/tools/merge/pyAltFCFGMerge @@ -0,0 +1,591 @@ +#!/bin/env python +#_____________________________________________ +# Caolan McNamara caolanm@redhat.com +# converted from original java written by Andreas Schluens so we can continue +# to build 680 OpenOffice.org series without java +# this is not really a replacement for the existing java tool, just the +# minimum required to make it work for now, the existing tool is still +# the canonical base, changes to it will have to be mirrored here until +# there is a java which is available for use by all +#_____________________________________________ + +import sys, string, os.path + +CFGFILE = os.environ["SOLARVER"] + "/" + os.environ["INPATH"] + "/inc/l10ntools/FCFGMerge.cfg" + +PROP_XMLVERSION = "xmlversion" # // <= global cfg file +PROP_XMLENCODING = "xmlencoding" # // <= global cfg file +PROP_XMLPATH = "xmlpath" # // <= global cfg file +PROP_XMLPACKAGE = "xmlpackage" # // <= global cfg file +PROP_SETNAME_TYPES = "setname_types" # // <= global cfg file +PROP_SETNAME_FILTERS = "setname_filters" # // <= global cfg file +PROP_SETNAME_LOADERS = "setname_frameloaders" # // <= global cfg file +PROP_SETNAME_HANDLERS = "setname_contenthandlers" # // <= global cfg file +PROP_SUBDIR_TYPES = "subdir_types" # // <= global cfg file +PROP_SUBDIR_FILTERS = "subdir_filters" # // <= global cfg file +PROP_SUBDIR_LOADERS = "subdir_frameloaders" # // <= global cfg file +PROP_SUBDIR_HANDLERS = "subdir_contenthandlers" # // <= global cfg file +PROP_EXTENSION_XCU = "extension_xcu" # // <= global cfg file +PROP_EXTENSION_PKG = "extension_pkg" # // <= global cfg file +PROP_DELIMITER = "delimiter" # // <= global cfg file +PROP_TRIM = "trim" # // <= global cfg file +PROP_DECODE = "decode" # // <= global cfg file +PROP_FRAGMENTSDIR = "fragmentsdir" # // <= cmdline +PROP_TEMPDIR = "tempdir" # // <= cmdline +PROP_OUTDIR = "outdir" # // <= cmdline +PROP_PKG = "pkg" # // <= cmdline +PROP_TCFG = "tcfg" # // <= cmdline +PROP_FCFG = "fcfg" # // <= cmdline +PROP_LCFG = "lcfg" # // <= cmdline +PROP_CCFG = "ccfg" # // <= cmdline +PROP_LANGUAGEPACK = "languagepack" # // <= cmdline +PROP_ITEMS = "items" # // <= pkg cfg files! + +#---begin java.util.Properties copy---# +""" + +An incomplete clean room implementation of +java.util.Properties written in Python. + +Copyright (C) 2002,2004 - Ollie Rutherfurd <oliver@rutherfurd.net> + +Based on: + + http://java.sun.com/j2se/1.3/docs/api/java/util/Properties.html + +Missing: + + - Currently, u\XXXX sequences are escaped when saving, but not unescaped + when read.. + +License: Python License + +Example Usage: + +>>> from properties import Properties +>>> props = Properties() +>>> props['one'] = '1' +>>> props['your name'] = "I don't know" +>>> print '\n'.join(props.keys()) +your name +one +>>> from StringIO import StringIO +>>> buff = StringIO() +>>> props.store(buff, "a little example...") +>>> buff.seek(0) +>>> print buff.read() +# a little example... +your\ name=I\ don\'t\ know +one=1 +>>> print props['your name'] +I don't know + +$Id: pyAltFCFGMerge,v 1.3 2007-12-07 10:57:44 vg Exp $ + +""" + +__all__ = ['Properties'] + + +def dec2hex(n): + + h = hex(n)[2:].upper() + return '\\u' + '0' * (4 - len(h)) + h + + +def escapestr(s): + + buff = [] + # QUESTION: escape leading or trailing spaces? + for c in s: + if c == '\\': + buff.append('\\\\') + elif c == '\t': + buff.append('\\t') + elif c == '\n': + buff.append('\\n') + elif c == '\r': + buff.append('\\r') + elif c == ' ': + buff.append('\\ ') + elif c == "'": + buff.append("\\'") + elif c == '"': + buff.append('\\"') + elif c == '#': + buff.append('\\#') + elif c == '!': + buff.append('\\!') + elif c == '=': + buff.append('\\=') + elif 32 <= ord(c) <= 126: + buff.append(c) + else: + buff.append(dec2hex(c)) + + return ''.join(buff) + + +# TODO: add support for \uXXXX? +def unescapestr(line): + + buff = [] + escape = 0 + for i in range(len(line)): + c = line[i] + if c == '\\': + if escape: + escape = 0 + buff.append('\\') + continue + else: + # this is to deal with '\' + # acting as a line continuation + # character + if i == len(line) - 1: + buff.append('\\') + break + else: + escape = 1 + continue + elif c == 'n': + if escape: + escape = 0 + buff.append('\n') + continue + elif c == 'r': + if escape: + escape = 0 + buff.append('\r') + continue + elif c == 't': + if escape: + escape = 0 + buff.append('\t') + continue + + buff.append(c) + + # make sure escape doesn't stay one + # all expected escape sequences either break + # or continue, so this should be safe + if escape: + escape = 0 + + return ''.join(buff) + + + +class Properties(dict): + + def __init__(self, defaults={}): + dict.__init__(self) + for n,v in defaults.items(): + self[n] = v + + def __getittem__(self,key): + try: + return dict.__getittem__(self,key) + except KeyError: + return None + + def read(self,filename): + """ + Reads properties from a file (java Property class + reads from an input stream -- see load()). + """ + f = None + try: + f = open(filename) + self.load(f) + finally: + if f: + f.close() + + def load(self, buff): + """ + Reads properties from a stream (StringIO, file, etc...) + """ + props = readprops(buff) + for n,v in props.iteritems(): + self[n] = v + +def readprops(buff): + + name,value = None,'' + props = {} + continued = 0 + + while 1: + line = buff.readline() + if not line: + break + line = line.strip() + + # empty line + if not line: + continue + + # comment + if line[0] in ('#','!'): + continue + + # find name + i,escaped = 0,0 + while i < len(line): + c = line[i] + + if c == '\\': + if escaped: + escaped = 0 + else: + escaped = 1 + i += 1 + continue + + elif c in (' ', '\t', ':', '=') and not escaped: + name = unescapestr(line[:i]) + break + + # make sure escaped doesn't stay on + if escaped: + escaped = 0 + + i += 1 + + # no dlimiter was found, name is entire line, there is no value + if name == None: + name = unescapestr(line.lstrip()) + + # skip delimiter + while line[i:i+1] in ('\t', ' ', ':', '='): + i += 1 + + value = unescapestr(line[i:].strip()) + while value[-1:] == '\\': + value = value[:-1] # remove \ + line = buff.readline() + if not line: + break + value += unescapestr(line.strip()) + + #print 'value:',value ## + props[name] = value + + return props +#---end java.util.Properties copy---# + +# Its a simple command line tool, which can merge different XML fragments +# together. Such fragments must exist as files on disk, will be moved into +# one file together on disk. +# +# @author Andreas Schluens +# +def run(sCmdLine): + printCopyright() + + aCfg = ConfigHelper(CFGFILE, sCmdLine) + + # help requested? + if aCfg.isHelp(): + printHelp() + sys.exit(-1) + + #create new merge object and start operation + aMerger = Merger(aCfg) + aMerger.merge() + + sys.exit(0) + +#prints out a copyright message on stdout. +def printCopyright(): + print "FCFGMerge" + print "Copyright: 2003 by Red Hat, Inc., based on FCFGMerge.java` by Sun" + print "All Rights Reserved." + +#prints out a help message on stdout. +def printHelp(): + print "____________________________________________________________" + print "usage: FCFGMerge cfg=<file name>" + print "parameters:" + print "\tcfg=<file name>" + print "\t\tmust point to a system file, which contains" + print "\t\tall neccessary configuration data for the merge process." + print "\tFurther cou can specify every parameter allowed in the" + print "\tconfig file as command line parameter too, to overwrite" + print "\tthe value from the file." + +def StringTokenizer(mstring, separators, isSepIncluded=0): +#Return a list of tokens given a base string and a string of +#separators, optionally including the separators if asked for""" + token='' + tokenList=[] + for c in mstring: + if c in separators: + if token != '': + tokenList.append(token) + token='' + if isSepIncluded: + tokenList.append(c) + else: + token+=c + if token: + tokenList.append(token) + return tokenList + +# can be used to analyze command line parameters +# and merge it together with might existing config +# files. That provides the possibility to overwrite +# config values via command line parameter. +# +# @author Andreas Schluens +class ConfigHelper: + def __init__(self, sPropFile, lCommandLineArgs): + self.m_bEmpty = 1 + # first load prop file, so its values can be overwritten + # by command line args later + # Do it only, if a valid file name was given. + # But in case this file name is wrong, throw an exception. + # So the outside code can react! + if sPropFile != None and len(sPropFile) > 0: + self.props = Properties() + self.props.read(sPropFile) + + count = 0 + if lCommandLineArgs != None: + count = len(lCommandLineArgs) + self.m_bEmpty = (count < 1) + + print lCommandLineArgs, "and len is", count + for arg in range(count): + # is it a named-value argument? + # Note: We ignores double "=" signs! => search from left to right + pos = lCommandLineArgs[arg].find('=') + if pos != -1: + sArg = lCommandLineArgs[arg][0:pos] + sValue = lCommandLineArgs[arg][pos+1:] + self.props[sArg] = sValue + continue + + # is it a boolean argument? + # Note: Because "--" and "-" will be interpreted as the same + # we search from right to left! + pos = string.rfind(lCommandLineArgs[arg], '-') + if pos == -1: + pos = lCommandLineArgs[arg].rfind('/') + if pos != -1: + sArg = lCommandLineArgs[arg][pos+1:] + self.props[sArg] = 1 + continue + + raise Exception("Invalid command line detected. The argument \""+\ + lCommandLineArgs[arg]+"\" use an unsupported format.") + +# for item in self.props: +# print item, '->', self.props[item] + + def isHelp(self): + return ( + (self.props.has_key("help")) or + (self.props.has_key("?") ) or + (self.props.has_key("h") ) + ) + + def getValue(self, sProp): + if not self.props.has_key(sProp): + raise Exception("The requested config value \""+sProp+"\" "\ + "does not exists!"); + return self.props[sProp]; + + def getValueWithDefault(self, sProp, default): + if not self.props.has_key(sProp): + return default; + return self.props[sProp]; + + def getStringList(self, sProp, sDelimiter, bTrim, bDecode): + if not self.props.has_key(sProp): + raise Exception("The requested config value \""+sProp+"\" does "\ + "not exists!"); + sValue = self.props[sProp] + + lValue = [] + lTokens = StringTokenizer(sValue, sDelimiter) + for sToken in lTokens: + if bTrim: + sToken = string.strip(sToken) + # remove "" + if ((bDecode) and (sToken.find("\"") == 0) and \ + (sToken.rfind("\"") == len(sToken)-1)): + sToken = sToken[1, len(sToken)-1] + lValue.append(sToken) + + return lValue + +def generateHeader(sVersion, sEncoding, sPath, sPackage, bLanguagePack): + sHeader = "<?xml version=\"" + sHeader += sVersion + sHeader += "\" encoding=\"" + sHeader += sEncoding + sHeader += "\"?>\n" + + if bLanguagePack: + sHeader += "<oor:component-data oor:package=\"" + sHeader += sPath + sHeader += "\" oor:name=\"" + sHeader += sPackage + sHeader += "\" xmlns:install=\"http://openoffice.org/2004/installation\"" + sHeader += " xmlns:oor=\"http://openoffice.org/2001/registry\"" + sHeader += " xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"" + sHeader += " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n" + else: + sHeader += "<oor:component-data xmlns:oor=\"http://openoffice.org/2001/registry\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" oor:package=\"" + sHeader += sPath + sHeader += "\" oor:name=\"" + sHeader += sPackage + sHeader += "\">\n" + return sHeader + +def generateFooter(): + return "</oor:component-data>\n" + +# can merge different xml fragments together. +# +# @author Caolan McNamara converted from the original java by Andreas Schluens +# +class Merger: + def __init__(self, aCfg): + self.m_aCfg = aCfg + + self.m_aFragmentsDir = self.m_aCfg.getValue(PROP_FRAGMENTSDIR) + + sDelimiter = self.m_aCfg.getValue(PROP_DELIMITER) + bTrim = self.m_aCfg.getValue(PROP_TRIM) + bDecode = self.m_aCfg.getValue(PROP_DECODE) + + try: + aFcfg = ConfigHelper(self.m_aCfg.getValue(PROP_TCFG), None) + self.m_lTypes = aFcfg.getStringList(PROP_ITEMS, sDelimiter, bTrim, bDecode) + except: + self.m_lTypes = [] + + try: + aFcfg = ConfigHelper(self.m_aCfg.getValue(PROP_FCFG), None) + self.m_lFilters = aFcfg.getStringList(PROP_ITEMS, sDelimiter, bTrim, bDecode) + except: + self.m_lFilters = [] + + try: + aFcfg = ConfigHelper(self.m_aCfg.getValue(PROP_LCFG), None) + self.m_lLoaders = aFcfg.getStringList(PROP_ITEMS, sDelimiter, bTrim, bDecode) + except: + self.m_lLoaders = [] + + try: + aFcfg = ConfigHelper(self.m_aCfg.getValue(PROP_CCFG), None) + self.m_lHandlers = aFcfg.getStringList(PROP_ITEMS, sDelimiter, bTrim, bDecode) + except: + self.m_lHandlers = [] + + def merge(self): + sPackage = self.m_aCfg.getValue(PROP_PKG) + + print "create package \""+sPackage+"\" ..." + print "generate package header ... " + + sBuffer = generateHeader(\ + self.m_aCfg.getValue(PROP_XMLVERSION ),\ + self.m_aCfg.getValue(PROP_XMLENCODING),\ + self.m_aCfg.getValue(PROP_XMLPATH ),\ + self.m_aCfg.getValue(PROP_XMLPACKAGE ),\ + self.m_aCfg.getValueWithDefault(PROP_LANGUAGEPACK, False)) + + # counts all transfered fragments + # Can be used later to decide, if a generated package file + # contains "nothing"! + nItemCount = 0 + + for i in range(4): + sSetName = None + sSubDir = None + lFragments = None + + try: + if i == 0: #types + print "generate set for types ... " + sSetName = self.m_aCfg.getValue(PROP_SETNAME_TYPES) + sSubDir = self.m_aCfg.getValue(PROP_SUBDIR_TYPES ) + lFragments = self.m_lTypes + elif i == 1: # filters + print "generate set for filter ... " + sSetName = self.m_aCfg.getValue(PROP_SETNAME_FILTERS) + sSubDir = self.m_aCfg.getValue(PROP_SUBDIR_FILTERS ) + lFragments = self.m_lFilters + elif i == 2: # loaders + print "generate set for frame loader ... " + sSetName = self.m_aCfg.getValue(PROP_SETNAME_LOADERS) + sSubDir = self.m_aCfg.getValue(PROP_SUBDIR_LOADERS ) + lFragments = self.m_lLoaders + elif i == 3: # handlers + print "generate set for content handler ... " + sSetName = self.m_aCfg.getValue(PROP_SETNAME_HANDLERS) + sSubDir = self.m_aCfg.getValue(PROP_SUBDIR_HANDLERS ) + lFragments = self.m_lHandlers + except: + continue + + nItemCount = nItemCount + len(lFragments) + + sBuffer = sBuffer + self.getFragments(\ + os.path.join(self.m_aFragmentsDir, sSubDir), \ + sSetName, lFragments, 1) + + print "generate package footer ... " + sBuffer = sBuffer + generateFooter() + + # Attention! + # If the package seem to be empty, it make no sense to generate a + # corresponding xml file. We should suppress writing of this file on + # disk completly ... + if nItemCount < 1: + print "Package is empty and will not result into a xml file on "\ + "disk!? Please check configuration file." + return + print "package contains "+str(nItemCount)+" items" + + aPackage = open(sPackage, 'w') + print "write temp package \""+sPackage + aPackage.write(sBuffer) + + def getFragments(self, aDir, sSetName, lFragments, nPrettyTabs): + sBuffer = '' + sExtXcu = self.m_aCfg.getValue(PROP_EXTENSION_XCU); + + if len(lFragments) < 1: + return sBuffer + + for tabs in range(nPrettyTabs): + sBuffer = sBuffer + "\t" + sBuffer = sBuffer + "<node oor:name=\""+sSetName+"\">\n" + nPrettyTabs = nPrettyTabs + 1 + + for sFragment in lFragments: + sFragPath = os.path.join(aDir, sFragment+"."+sExtXcu) + try: + aFragmentFile = open(sFragPath) + except: + # handle simple files only and check for existence! + raise Exception("fragment \""+sFragPath+"\" does not exists.") + + print "merge fragment \""+sFragPath+"\" ..." + sBuffer = sBuffer + aFragmentFile.read() + + sBuffer = sBuffer + "\n" + + nPrettyTabs = nPrettyTabs - 1 + for tabs in range(nPrettyTabs): + sBuffer = sBuffer + "\t" + sBuffer = sBuffer + "</node>\n" + return sBuffer + +run(sys.argv) + diff --git a/filter/source/config/tools/split/FCFGSplit.cfg b/filter/source/config/tools/split/FCFGSplit.cfg new file mode 100644 index 000000000000..0c3c72b2029d --- /dev/null +++ b/filter/source/config/tools/split/FCFGSplit.cfg @@ -0,0 +1,110 @@ +#------------------------------------------------------ +# must be a system file name, which points to the +# xcu file, should be analyzed and splitted +#------------------------------------------------------ +xmlfile =o:/SRC680/src.m21/officecfg/registry/data/org/openoffice/Office/TypeDetection.xcu + +#------------------------------------------------------ +# specify the format of the specified "xmlfile" +#------------------------------------------------------ +informat = 6.0 + +#------------------------------------------------------ +# must be a system directory, which can be cleared completly +# and will be used then to generate all results of this +# program there - means to generate al xcu fragments +#------------------------------------------------------ +outdir =c:/temp/split/fragments + +#------------------------------------------------------ +# specify the format of the generated xcu fragments +# inside the "outdir" +#------------------------------------------------------ +outformat = 6.Y + +#------------------------------------------------------ +# specify the text encoding, which must be used for +# reading the "xmlfile" +#------------------------------------------------------ +inencoding = UTF-8 + +#------------------------------------------------------ +# specify the text encoding, which must be used for +# writing the xcu fragments +#------------------------------------------------------ +outencoding = UTF-8 + +#------------------------------------------------------ +# The following defines specify system directories +# which must be sub directories of "outdir". +# Every of these sub dir willl be used to generate +# groups of xcu fragments there. +#------------------------------------------------------ +subdir_types = types +subdir_filters = filters +subdir_detectservices = detectservices +subdir_frameloaders = frameloaders +subdir_contenthandlers = contenthandlers + +#------------------------------------------------------ +# Enable/Disable grouping of filter fragments and using +# of specialized sub directories. +#------------------------------------------------------ +seperate_filters_by_module = false + +#------------------------------------------------------ +# The following defines specify system directories +# which must be sub directories of "outdir/subdir_filters". +# Every of these sub dir willl be used to generate +# groups of filter fragments there. +# Note: These sub directories are used only if +# "seperate_filters_by_module" is set to true! +#------------------------------------------------------ +subdir_module_swriter = swriter +subdir_module_sweb = sweb +subdir_module_sglobal = sglobal +subdir_module_scalc = scalc +subdir_module_sdraw = sdraw +subdir_module_simpress = simpress +subdir_module_smath = smath +subdir_module_schart = schart +subdir_module_others = others + +#------------------------------------------------------ +# Define the file extension, which is used for +# every generated fragment inside "outdir". +#------------------------------------------------------ +fragment_extension = .xcu + +#------------------------------------------------------ +# specify a debug level for generating debug output +# on the console +# The following levels exists: +# 0 = no output +# 1 = only errors/exceptions will be shown +# 2 = errors/exceptions and warnings will be shown +# 3 = additional to errors and warnings some global +# informations are shown +# 4 = additional to errors and warnings some global +# and many detailed informations are shown +#------------------------------------------------------ +debug = 4 + +#------------------------------------------------------ +# Enable/Disable creation of the new "COMBINED" filter flag +# for 6.y versions. That means: every filter with set +# "IMPORT" and "EXPORT" flag will get the new flag value +# and lose the old ones. +#------------------------------------------------------ +create_combine_filter_flag = false + +#------------------------------------------------------ +# Remove some obsolete filter flags for 6.y versions. +#------------------------------------------------------ +remove_filter_flag_browserpreferred = true +remove_filter_flag_preferred = false +remove_filter_flag_3rdparty = false + +remove_graphic_filters = false +remove_filter_uinames = false +set_default_detector = false diff --git a/filter/source/config/tools/split/FCFGSplit.java b/filter/source/config/tools/split/FCFGSplit.java new file mode 100644 index 000000000000..4693db4cdf83 --- /dev/null +++ b/filter/source/config/tools/split/FCFGSplit.java @@ -0,0 +1,565 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +package com.sun.star.filter.config.tools.split; + +//_______________________________________________ + +import java.lang.*; +import java.util.*; +import java.io.*; +import com.sun.star.filter.config.tools.utils.*; + +//_______________________________________________ + +/** + * Implements a simple command line tool, which can read a given xml + * configuration file of the filter configuration, analyze it + * and split it into different xml fragments. + * All parameters of this process can be given by a configuration file. + * + * + */ +public class FCFGSplit +{ + //___________________________________________ + // private const + + /** specify the command line parameter to set the debug level for this app. */ + private static final java.lang.String CMD_DEBUG = "debug" ; + + /** specify the command line parameter to set a configuration file for this app. */ + private static final java.lang.String CMD_CONFIG = "config"; + + /** The following strings are used as property names of + * the configuration file we need here. + * + * @seealso readCfg() + */ + + private static final java.lang.String CFGKEY_XMLFILE = "xmlfile" ; + private static final java.lang.String CFGKEY_INFORMAT = "informat" ; + private static final java.lang.String CFGKEY_OUTFORMAT = "outformat" ; + private static final java.lang.String CFGKEY_INENCODING = "inencoding" ; + private static final java.lang.String CFGKEY_OUTENCODING = "outencoding" ; + private static final java.lang.String CFGKEY_OUTDIR = "outdir" ; + private static final java.lang.String CFGKEY_FRAGMENT_EXTENSION = "fragment_extension" ; + private static final java.lang.String CFGKEY_CREATE_COMBINE_FILTER_FLAG = "create_combine_filter_flag" ; + private static final java.lang.String CFGKEY_REMOVE_FILTER_FLAG_BROWSERPREFERRED = "remove_filter_flag_browserpreferred" ; + private static final java.lang.String CFGKEY_REMOVE_FILTER_FLAG_PREFERRED = "remove_filter_flag_preferred" ; + private static final java.lang.String CFGKEY_REMOVE_FILTER_FLAG_3RDPARTY = "remove_filter_flag_3rdparty" ; + private static final java.lang.String CFGKEY_REMOVE_FILTER_UINAMES = "remove_filter_uinames" ; + private static final java.lang.String CFGKEY_REMOVE_GRAPHIC_FILTERS = "remove_graphic_filters" ; + private static final java.lang.String CFGKEY_SET_DEFAULT_DETECTOR = "set_default_detector" ; + + private static final java.lang.String CFGKEY_SUBDIR_TYPES = "subdir_types" ; + private static final java.lang.String CFGKEY_SUBDIR_FILTERS = "subdir_filters" ; + private static final java.lang.String CFGKEY_SUBDIR_DETECTSERVICES = "subdir_detectservices" ; + private static final java.lang.String CFGKEY_SUBDIR_FRAMELOADERS = "subdir_frameloaders" ; + private static final java.lang.String CFGKEY_SUBDIR_CONTENTHANDLERS = "subdir_contenthandlers" ; + + private static final java.lang.String CFGKEY_SEPERATE_FILTERS_BY_MODULE = "seperate_filters_by_module" ; + + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SWRITER = "subdir_module_swriter" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SWEB = "subdir_module_sweb" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SGLOBAL = "subdir_module_sglobal" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SCALC = "subdir_module_scalc" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SDRAW = "subdir_module_sdraw" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SIMPRESS = "subdir_module_simpress" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SMATH = "subdir_module_smath" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_SCHART = "subdir_module_schart" ; + private static final java.lang.String CFGKEY_SUBDIR_MODULE_OTHERS = "subdir_module_others" ; + + /** The following strings are used as property default + * values if a configuration key does not exist. + * It must be a string value, because the class java.util.Properties + * accept it as the only type. But of course the value must be + * convertable to the right target type. + * + * @seealso readCfg() + */ + + private static final java.lang.String DEFAULT_XMLFILE = ".//TypeDetection.xcu" ; + private static final java.lang.String DEFAULT_INFORMAT = "6.0" ; + private static final java.lang.String DEFAULT_OUTFORMAT = "6.Y" ; + private static final java.lang.String DEFAULT_INENCODING = "UTF-8" ; + private static final java.lang.String DEFAULT_OUTENCODING = "UTF-8" ; + private static final java.lang.String DEFAULT_OUTDIR = ".//temp" ; + private static final java.lang.String DEFAULT_FRAGMENT_EXTENSION = ".xcu" ; + private static final java.lang.String DEFAULT_CREATE_COMBINE_FILTER_FLAG = "false" ; + private static final java.lang.String DEFAULT_REMOVE_FILTER_FLAG_BROWSERPREFERRED = "false" ; + private static final java.lang.String DEFAULT_REMOVE_FILTER_FLAG_PREFERRED = "false" ; + private static final java.lang.String DEFAULT_REMOVE_FILTER_FLAG_3RDPARTY = "false" ; + private static final java.lang.String DEFAULT_REMOVE_FILTER_UINAMES = "false" ; + private static final java.lang.String DEFAULT_REMOVE_GRAPHIC_FILTERS = "false" ; + private static final java.lang.String DEFAULT_SET_DEFAULT_DETECTOR = "false" ; + + private static final java.lang.String DEFAULT_SUBDIR_TYPES = "Types" ; + private static final java.lang.String DEFAULT_SUBDIR_FILTERS = "Filters" ; + private static final java.lang.String DEFAULT_SUBDIR_DETECTSERVICES = "DetectServices" ; + private static final java.lang.String DEFAULT_SUBDIR_FRAMELOADERS = "FrameLoaders" ; + private static final java.lang.String DEFAULT_SUBDIR_CONTENTHANDLERS = "ContentHandlers" ; + + private static final java.lang.String DEFAULT_SEPERATE_FILTERS_BY_MODULE = "false" ; + + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SWRITER = "SWriter" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SWEB = "SWeb" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SGLOBAL = "SGlobal" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SCALC = "SCalc" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SDRAW = "SDraw" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SIMPRESS = "SImpress" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SMATH = "SMath" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_SCHART = "SChart" ; + private static final java.lang.String DEFAULT_SUBDIR_MODULE_OTHERS = "Others" ; + + //___________________________________________ + // private member + + /** contains the name of the reading xcu file. */ + private static java.lang.String m_sXMLFile; + + /** specify the xml file format, which must be interpreted at reading time. */ + private static int m_nInFormat; + + /** specify the xml file format, which must be used + * to generate all xcu fragments. */ + private static int m_nOutFormat; + + /** specify the file encoding for reading. */ + private static java.lang.String m_sInEncoding; + + /** specify the file encoding for writing fragments. */ + private static java.lang.String m_sOutEncoding; + + /** specify the target directory, where all results of this + * process can be generated. + * Note: May it will be cleared! */ + private static java.lang.String m_sOutDir; + + /** can be used to generate some output on the console. */ + private static Logger m_aDebug; + + /** contains the file extension for all generated xml fragments. */ + private static java.lang.String m_sFragmentExtension; + + /** specify the sub directory to generate type fragments. + * Its meaned relativ to m_sOutDir. */ + private static java.lang.String m_sSubDirTypes; + + /** specify the sub directory to generate filter fragments. + * Its meaned relativ to m_sOutDir. */ + private static java.lang.String m_sSubDirFilters; + + /** specify the sub directory to generate detect service fragments. + * Its meaned relativ to m_sOutDir. */ + private static java.lang.String m_sSubDirDetectServices; + + /** specify the sub directory to generate frame loader fragments. + * Its meaned relativ to m_sOutDir. */ + private static java.lang.String m_sSubDirFrameLoaders; + + /** specify the sub directory to generate content handler fragments. + * Its meaned relativ to m_sOutDir. */ + private static java.lang.String m_sSubDirContentHandlers; + + /** enable/disable generating of filter groups - seperated by + * application modules. */ + private static boolean m_bSeperateFiltersByModule; + + /** specify the sub directory to generate filter groups + * for the module writer. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSWriter; + + /** specify the sub directory to generate filter groups + * for the module writer/web. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSWeb; + + /** specify the sub directory to generate filter groups + * for the module writer/global. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSGlobal; + + /** specify the sub directory to generate filter groups + * for the module calc. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSCalc; + + /** specify the sub directory to generate filter groups + * for the module draw. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSDraw; + + /** specify the sub directory to generate filter groups + * for the module impress. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSImpress; + + /** specify the sub directory to generate filter groups + * for the module math. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSMath; + + /** specify the sub directory to generate filter groups + * for the module chart. Will be used only, + * if m_bSeperateFiltersByModule is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleSChart; + + /** specify the sub directory to generate filter groups + * for unknown modules - e.g. the graphic filters. + * Will be used only, if m_bSeperateFiltersByModule + * is set to TRUE.*/ + private static java.lang.String m_sSubDirModuleOthers; + + private static boolean m_bCreateCombineFilterFlag; + private static boolean m_bRemoveFilterFlagBrowserPreferred; + private static boolean m_bRemoveFilterFlagPreferred; + private static boolean m_bRemoveFilterFlag3rdparty; + private static boolean m_bRemoveFilterUINames; + private static boolean m_bRemoveGraphicFilters; + private static boolean m_bSetDefaultDetector; + + //___________________________________________ + // main + + /** main. + * + * Analyze the command line arguments, load the configuration file, + * fill a cache from the specified xml file and generate all + * needed xml fragments inside the specified output directory. + * + * @param lArgs + * contains the command line arguments. + */ + public static void main(java.lang.String[] lArgs) + { + long t_start = System.currentTimeMillis(); + + // must be :-) + FCFGSplit.printCopyright(); + // can be used as exit code + int nErr = 0; + + // -------------------------------------------------------------------- + // analyze command line parameter + ConfigHelper aCmdLine = null; + try + { + aCmdLine = new ConfigHelper("com/sun/star/filter/config/tools/split/FCFGSplit.cfg", lArgs); + } + catch(java.lang.Throwable exCmdLine) + { + exCmdLine.printStackTrace(); + FCFGSplit.printHelp(); + System.exit(--nErr); + } + + // -------------------------------------------------------------------- + // help requested? + if (aCmdLine.isHelp()) + { + FCFGSplit.printHelp(); + System.exit(--nErr); + } + + // -------------------------------------------------------------------- + // initialize an output channel for errors/warnings etc. + int nLevel = aCmdLine.getInt(CMD_DEBUG, Logger.LEVEL_DETAILEDINFOS); + m_aDebug = new Logger(nLevel); + try + { + FCFGSplit.readCfg(aCmdLine); + } + catch(java.lang.Exception exCfgLoad) + { + m_aDebug.setException(exCfgLoad); + System.exit(--nErr); + } + + // -------------------------------------------------------------------- + // check if the required resources exists + java.io.File aXMLFile = new java.io.File(m_sXMLFile); + if (!aXMLFile.exists() || !aXMLFile.isFile()) + { + m_aDebug.setError("The specified xml file \""+aXMLFile.getPath()+"\" does not exist or seems not to be a simple file."); + System.exit(--nErr); + } + + java.io.File aOutDir = new java.io.File(m_sOutDir); + if (!aOutDir.exists() || !aOutDir.isDirectory()) + { + m_aDebug.setError("The specified directory \""+aOutDir.getPath()+"\" does not exist or seems not to be a directory."); + System.exit(--nErr); + } + + if (m_nInFormat == Cache.FORMAT_UNSUPPORTED) + { + m_aDebug.setError("The specified xml format for input is not supported."); + System.exit(--nErr); + } + + if (m_nOutFormat == Cache.FORMAT_UNSUPPORTED) + { + m_aDebug.setError("The specified xml format for output is not supported."); + System.exit(--nErr); + } + + // -------------------------------------------------------------------- + // load the xml file + m_aDebug.setGlobalInfo("loading xml file \""+aXMLFile.getPath()+"\" ..."); + long t_load_start = System.currentTimeMillis(); + Cache aCache = new Cache(m_aDebug); + try + { + aCache.fromXML(aXMLFile, m_nInFormat); + } + catch(java.lang.Throwable exLoad) + { + m_aDebug.setException(exLoad); + System.exit(--nErr); + } + long t_load_end = System.currentTimeMillis(); + + // -------------------------------------------------------------------- + // validate the content, fix some problems and convert it to the output format + m_aDebug.setGlobalInfo("validate and transform to output format ..."); + long t_transform_start = System.currentTimeMillis(); + try + { + aCache.validate(m_nInFormat); + if ( + (m_nInFormat == Cache.FORMAT_60) && + (m_nOutFormat == Cache.FORMAT_6Y) + ) + { + aCache.transform60to6Y(m_bCreateCombineFilterFlag , + m_bRemoveFilterFlagBrowserPreferred, + m_bRemoveFilterFlagPreferred , + m_bRemoveFilterFlag3rdparty , + m_bRemoveFilterUINames , + m_bRemoveGraphicFilters , + m_bSetDefaultDetector ); + } + aCache.validate(m_nOutFormat); + } + catch(java.lang.Throwable exTransform) + { + m_aDebug.setException(exTransform); + System.exit(--nErr); + } + long t_transform_end = System.currentTimeMillis(); + + // -------------------------------------------------------------------- + // generate all xml fragments + m_aDebug.setGlobalInfo("generate xml fragments into directory \""+aOutDir.getPath()+"\" ..."); + long t_split_start = System.currentTimeMillis(); + try + { + SplitterData aDataSet = new SplitterData(); + aDataSet.m_aDebug = m_aDebug ; + aDataSet.m_aCache = aCache ; + aDataSet.m_nFormat = m_nOutFormat ; + aDataSet.m_sEncoding = m_sOutEncoding ; + aDataSet.m_bSeperateFiltersByModule = m_bSeperateFiltersByModule; + aDataSet.m_sFragmentExtension = m_sFragmentExtension ; + aDataSet.m_aOutDir = aOutDir ; + + aDataSet.m_aFragmentDirTypes = new java.io.File(aOutDir, m_sSubDirTypes ); + aDataSet.m_aFragmentDirFilters = new java.io.File(aOutDir, m_sSubDirFilters ); + aDataSet.m_aFragmentDirDetectServices = new java.io.File(aOutDir, m_sSubDirDetectServices ); + aDataSet.m_aFragmentDirFrameLoaders = new java.io.File(aOutDir, m_sSubDirFrameLoaders ); + aDataSet.m_aFragmentDirContentHandlers = new java.io.File(aOutDir, m_sSubDirContentHandlers); + + if (m_bSeperateFiltersByModule) + { + aDataSet.m_aFragmentDirModuleSWriter = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSWriter ); + aDataSet.m_aFragmentDirModuleSWeb = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSWeb ); + aDataSet.m_aFragmentDirModuleSGlobal = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSGlobal ); + aDataSet.m_aFragmentDirModuleSCalc = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSCalc ); + aDataSet.m_aFragmentDirModuleSDraw = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSDraw ); + aDataSet.m_aFragmentDirModuleSImpress = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSImpress); + aDataSet.m_aFragmentDirModuleSMath = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSMath ); + aDataSet.m_aFragmentDirModuleSChart = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleSChart ); + aDataSet.m_aFragmentDirModuleOthers = new java.io.File(aDataSet.m_aFragmentDirFilters, m_sSubDirModuleOthers ); + } + else + { + aDataSet.m_aFragmentDirModuleSWriter = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSWeb = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSGlobal = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSCalc = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSDraw = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSImpress = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSMath = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleSChart = aDataSet.m_aFragmentDirFilters; + aDataSet.m_aFragmentDirModuleOthers = aDataSet.m_aFragmentDirFilters; + } + + Splitter aSplitter = new Splitter(aDataSet); + aSplitter.split(); + } + catch(java.lang.Throwable exSplit) + { + m_aDebug.setException(exSplit); + System.exit(--nErr); + } + long t_split_end = System.currentTimeMillis(); + + // -------------------------------------------------------------------- + // generate some special views + m_aDebug.setGlobalInfo("generate views and statistics ..."); + long t_statistics_start = System.currentTimeMillis(); + try + { + aCache.analyze(); + aCache.toHTML(aOutDir, m_nOutFormat, m_sOutEncoding); + m_aDebug.setDetailedInfo(aCache.getStatistics()); + } + catch(java.lang.Throwable exStatistics) + { + m_aDebug.setException(exStatistics); + System.exit(--nErr); + } + long t_statistics_end = System.currentTimeMillis(); + + // -------------------------------------------------------------------- + // analyze some time stamps + long t_end = System.currentTimeMillis(); + + java.lang.StringBuffer sTimes = new java.lang.StringBuffer(100); + sTimes.append("Needed times:\n" ); + sTimes.append("t [all]\t\t=\t" ); + sTimes.append(t_end-t_start ); + sTimes.append(" ms\n" ); + sTimes.append("t [load]\t=\t" ); + sTimes.append(t_load_end-t_load_start ); + sTimes.append(" ms\n" ); + sTimes.append("t [transform]\t=\t" ); + sTimes.append(t_transform_end-t_transform_start ); + sTimes.append(" ms\n" ); + sTimes.append("t [split]\t=\t" ); + sTimes.append(t_split_end-t_split_start ); + sTimes.append(" ms\n" ); + sTimes.append("t [statistics]\t=\t" ); + sTimes.append(t_statistics_end-t_statistics_start); + sTimes.append(" ms\n" ); + m_aDebug.setDetailedInfo(sTimes.toString()); + + // everyting seems to be ok. + // Return "OK" to calli. + m_aDebug.setGlobalInfo("Finish."); + System.exit(0); + } + + //___________________________________________ + + /** read the configuration file. + * + * @param aCfg + * contains the content of the + * loaded configuration file. + */ + private static void readCfg(java.util.Properties aCfg) + { + m_sXMLFile = aCfg.getProperty(CFGKEY_XMLFILE , DEFAULT_XMLFILE ); + + m_sInEncoding = aCfg.getProperty(CFGKEY_INENCODING , DEFAULT_INENCODING ); + m_sOutEncoding = aCfg.getProperty(CFGKEY_OUTENCODING , DEFAULT_OUTENCODING ); + m_sOutDir = aCfg.getProperty(CFGKEY_OUTDIR , DEFAULT_OUTDIR ); + m_sFragmentExtension = aCfg.getProperty(CFGKEY_FRAGMENT_EXTENSION , DEFAULT_FRAGMENT_EXTENSION ); + + m_sSubDirTypes = aCfg.getProperty(CFGKEY_SUBDIR_TYPES , DEFAULT_SUBDIR_TYPES ); + m_sSubDirFilters = aCfg.getProperty(CFGKEY_SUBDIR_FILTERS , DEFAULT_SUBDIR_FILTERS ); + m_sSubDirDetectServices = aCfg.getProperty(CFGKEY_SUBDIR_DETECTSERVICES , DEFAULT_SUBDIR_DETECTSERVICES ); + m_sSubDirFrameLoaders = aCfg.getProperty(CFGKEY_SUBDIR_FRAMELOADERS , DEFAULT_SUBDIR_FRAMELOADERS ); + m_sSubDirContentHandlers = aCfg.getProperty(CFGKEY_SUBDIR_CONTENTHANDLERS , DEFAULT_SUBDIR_CONTENTHANDLERS ); + + m_sSubDirModuleSWriter = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SWRITER , DEFAULT_SUBDIR_MODULE_SWRITER ); + m_sSubDirModuleSWeb = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SWEB , DEFAULT_SUBDIR_MODULE_SWEB ); + m_sSubDirModuleSGlobal = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SGLOBAL , DEFAULT_SUBDIR_MODULE_SGLOBAL ); + m_sSubDirModuleSCalc = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SCALC , DEFAULT_SUBDIR_MODULE_SCALC ); + m_sSubDirModuleSDraw = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SDRAW , DEFAULT_SUBDIR_MODULE_SDRAW ); + m_sSubDirModuleSImpress = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SIMPRESS , DEFAULT_SUBDIR_MODULE_SIMPRESS ); + m_sSubDirModuleSMath = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SMATH , DEFAULT_SUBDIR_MODULE_SMATH ); + m_sSubDirModuleSChart = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_SCHART , DEFAULT_SUBDIR_MODULE_SCHART ); + m_sSubDirModuleOthers = aCfg.getProperty(CFGKEY_SUBDIR_MODULE_OTHERS , DEFAULT_SUBDIR_MODULE_OTHERS ); + + m_bSeperateFiltersByModule = new java.lang.Boolean(aCfg.getProperty(CFGKEY_SEPERATE_FILTERS_BY_MODULE , DEFAULT_SEPERATE_FILTERS_BY_MODULE )).booleanValue(); + m_bCreateCombineFilterFlag = new java.lang.Boolean(aCfg.getProperty(CFGKEY_CREATE_COMBINE_FILTER_FLAG , DEFAULT_CREATE_COMBINE_FILTER_FLAG )).booleanValue(); + m_bRemoveFilterFlagBrowserPreferred = new java.lang.Boolean(aCfg.getProperty(CFGKEY_REMOVE_FILTER_FLAG_BROWSERPREFERRED, DEFAULT_REMOVE_FILTER_FLAG_BROWSERPREFERRED)).booleanValue(); + m_bRemoveFilterFlagPreferred = new java.lang.Boolean(aCfg.getProperty(CFGKEY_REMOVE_FILTER_FLAG_PREFERRED , DEFAULT_REMOVE_FILTER_FLAG_PREFERRED )).booleanValue(); + m_bRemoveFilterFlag3rdparty = new java.lang.Boolean(aCfg.getProperty(CFGKEY_REMOVE_FILTER_FLAG_3RDPARTY , DEFAULT_REMOVE_FILTER_FLAG_3RDPARTY )).booleanValue(); + m_bRemoveFilterUINames = new java.lang.Boolean(aCfg.getProperty(CFGKEY_REMOVE_FILTER_UINAMES , DEFAULT_REMOVE_FILTER_UINAMES )).booleanValue(); + m_bRemoveGraphicFilters = new java.lang.Boolean(aCfg.getProperty(CFGKEY_REMOVE_GRAPHIC_FILTERS , DEFAULT_REMOVE_GRAPHIC_FILTERS )).booleanValue(); + m_bSetDefaultDetector = new java.lang.Boolean(aCfg.getProperty(CFGKEY_SET_DEFAULT_DETECTOR , DEFAULT_SET_DEFAULT_DETECTOR )).booleanValue(); + + java.lang.String sFormat = aCfg.getProperty(CFGKEY_INFORMAT, DEFAULT_INFORMAT); + m_nInFormat = Cache.mapFormatString2Format(sFormat); + + sFormat = aCfg.getProperty(CFGKEY_OUTFORMAT, DEFAULT_OUTFORMAT); + m_nOutFormat = Cache.mapFormatString2Format(sFormat); + } + + //___________________________________________ + + /** prints out a copyright message on stdout. + */ + private static void printCopyright() + { + java.lang.StringBuffer sOut = new java.lang.StringBuffer(256); + sOut.append("FCFGSplit\n"); + sOut.append("Copyright: 2000 by Sun Microsystems, Inc.\n"); + sOut.append("All Rights Reserved.\n"); + System.out.println(sOut.toString()); + } + + //___________________________________________ + + /** prints out a help message on stdout. + */ + private static void printHelp() + { + java.lang.StringBuffer sOut = new java.lang.StringBuffer(1000); + sOut.append("_______________________________________________________________________________\n\n" ); + sOut.append("usage: FCFGSplit "+CMD_CONFIG+"=<file name> "+CMD_DEBUG+"=<level>\n" ); + sOut.append("parameters:\n" ); + sOut.append("\t-help\n" ); + sOut.append("\t\tshow this little help.\n\n" ); + sOut.append("\t"+CMD_CONFIG+"=<file name>\n" ); + sOut.append("\t\tspecify the configuration file.\n\n" ); + sOut.append("\t"+CMD_DEBUG+"=<level>\n" ); + sOut.append("\t\tprints out some debug messages.\n" ); + sOut.append("\t\tlevel=[0..4]\n" ); + sOut.append("\t\t0 => no debug messages\n" ); + sOut.append("\t\t1 => print out errors only\n" ); + sOut.append("\t\t2 => print out errors & warnings\n" ); + sOut.append("\t\t3 => print out some global actions (e.g. load file ...)\n" ); + sOut.append("\t\t4 => print out more detailed actions (e.g. load item nr. xxx of file.)\n\n" ); + System.out.println(sOut.toString()); + } +} diff --git a/filter/source/config/tools/split/Manifest.mf b/filter/source/config/tools/split/Manifest.mf new file mode 100644 index 000000000000..4d0d20ed59cc --- /dev/null +++ b/filter/source/config/tools/split/Manifest.mf @@ -0,0 +1 @@ +Main-Class: com.sun.star.filter.config.tools.split.FCFGSplit diff --git a/filter/source/config/tools/split/Splitter.java b/filter/source/config/tools/split/Splitter.java new file mode 100644 index 000000000000..d9c171382596 --- /dev/null +++ b/filter/source/config/tools/split/Splitter.java @@ -0,0 +1,310 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +package com.sun.star.filter.config.tools.split; + +//_______________________________________________ + +import java.lang.*; +import java.util.*; +import java.io.*; +import com.sun.star.filter.config.tools.utils.*; + +//_______________________________________________ + +/** + * Can split one xml file into its different xml fragments. + * + * + */ +public class Splitter +{ + //___________________________________________ + // const + + //___________________________________________ + // member + + /** contains all real member of this instance. + * That make it easy to initialize an instance + * of this class inside a multi-threaded environment. */ + private SplitterData m_aDataSet; + + //___________________________________________ + // interface + + /** initialize a new instance of this class with all + * needed resources. + * + * @param aDataSet + * contains all needed parameters for this instance + * as a complete set, which can be filled outside. + */ + public Splitter(SplitterData aDataSet) + { + m_aDataSet = aDataSet; + } + + //___________________________________________ + // interface + + /** generate xml fragments for all cache items. + * + * @throw [java.lang.Exception] + * if anything will fail inside during + * this operation runs. + */ + public synchronized void split() + throws java.lang.Exception + { + createDirectoryStructures(); + + // use some statistic values to check if all cache items + // will be transformed realy. + int nTypes = m_aDataSet.m_aCache.getItemCount(Cache.E_TYPE ); + int nFilters = m_aDataSet.m_aCache.getItemCount(Cache.E_FILTER ); + int nDetectServices = m_aDataSet.m_aCache.getItemCount(Cache.E_DETECTSERVICE ); + int nFrameLoaders = m_aDataSet.m_aCache.getItemCount(Cache.E_FRAMELOADER ); + int nContentHandlers = m_aDataSet.m_aCache.getItemCount(Cache.E_CONTENTHANDLER); + + // generate all type fragments + m_aDataSet.m_aDebug.setGlobalInfo("generate type fragments ..."); + java.util.Vector lNames = m_aDataSet.m_aCache.getItemNames(Cache.E_TYPE); + java.util.Enumeration it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_TYPE, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirTypes); + nTypes -= lNames.size(); + + // generate filter fragments for the writer module + m_aDataSet.m_aDebug.setGlobalInfo("generate filter fragments ..."); + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module writer ..."); + java.util.HashMap rRequestedProps = new java.util.HashMap(); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.text.TextDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSWriter); + nFilters -= lNames.size(); + + // generate filter fragments for the writer/web module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module writer/web ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.text.WebDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSWeb); + nFilters -= lNames.size(); + + // generate filter fragments for the writer/global module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module writer/global ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.text.GlobalDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSGlobal); + nFilters -= lNames.size(); + + // generate filter fragments for the calc module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module calc ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.sheet.SpreadsheetDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSCalc); + nFilters -= lNames.size(); + + // generate filter fragments for the draw module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module draw ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.drawing.DrawingDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSDraw); + nFilters -= lNames.size(); + + // generate filter fragments for the impress module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module impress ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.presentation.PresentationDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSImpress); + nFilters -= lNames.size(); + + // generate filter fragments for the chart module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module chart ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.chart2.ChartDocument"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSChart); + nFilters -= lNames.size(); + + // generate filter fragments for the math module + m_aDataSet.m_aDebug.setGlobalInfo("\tfor module math ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, "com.sun.star.formula.FormulaProperties"); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleSMath); + nFilters -= lNames.size(); + + // generate fragments for 3rdParty or unspecified (may graphics) filters! + m_aDataSet.m_aDebug.setGlobalInfo("\tfor unknown modules ..."); + rRequestedProps.put(Cache.PROPNAME_DOCUMENTSERVICE, ""); + lNames = m_aDataSet.m_aCache.getMatchedItemNames(Cache.E_FILTER, rRequestedProps); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FILTER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirModuleOthers); + nFilters -= lNames.size(); + + // generate all detect service fragments + m_aDataSet.m_aDebug.setGlobalInfo("generate detect service fragments ..."); + lNames = m_aDataSet.m_aCache.getItemNames(Cache.E_DETECTSERVICE); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_DETECTSERVICE, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirDetectServices); + nDetectServices -= lNames.size(); + + // generate all frame loader fragments + m_aDataSet.m_aDebug.setGlobalInfo("generate frame loader fragments ..."); + lNames = m_aDataSet.m_aCache.getItemNames(Cache.E_FRAMELOADER); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_FRAMELOADER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirFrameLoaders); + nFrameLoaders -= lNames.size(); + + // generate all content handler fragments + m_aDataSet.m_aDebug.setGlobalInfo("generate content handler fragments ..."); + lNames = m_aDataSet.m_aCache.getItemNames(Cache.E_CONTENTHANDLER); + it = lNames.elements(); + while(it.hasMoreElements()) + generateXMLFragment(Cache.E_CONTENTHANDLER, (java.lang.String)it.nextElement(), m_aDataSet.m_aFragmentDirContentHandlers); + nContentHandlers -= lNames.size(); + + // check if all cache items was handled + if ( + (nTypes != 0) || + (nFilters != 0) || + (nDetectServices != 0) || + (nFrameLoaders != 0) || + (nContentHandlers != 0) + ) + { + java.lang.StringBuffer sStatistic = new java.lang.StringBuffer(256); + sStatistic.append("some cache items seems to be not transformed:\n"); + sStatistic.append(nTypes +" unhandled types\n" ); + sStatistic.append(nFilters +" unhandled filters\n" ); + sStatistic.append(nDetectServices +" unhandled detect services\n"); + sStatistic.append(nFrameLoaders +" unhandled frame loader\n" ); + sStatistic.append(nContentHandlers+" unhandled content handler\n"); + throw new java.lang.Exception(sStatistic.toString()); + } + } + + //___________________________________________ + + /** generate a xml fragment file from the specified cache item. + * + * @param eItemType + * specify, which sub container of the cache must be used + * to locate the right item. + * + * @param sItemName + * the name of the cache item inside the specified sub container. + * + * @param aOutDir + * output directory. + * + * @throw [java.lang.Exception] + * if the fragment file already exists or could not be created + * successfully. + */ + private void generateXMLFragment(int eItemType, + java.lang.String sItemName, + java.io.File aOutDir ) + throws java.lang.Exception + { + java.lang.String sFileName = FileHelper.convertName2FileName(sItemName); + java.lang.String sXML = m_aDataSet.m_aCache.getItemAsXML(eItemType, sItemName, m_aDataSet.m_nFormat); + java.io.File aFile = new java.io.File(aOutDir, sFileName+m_aDataSet.m_sFragmentExtension); + + if (aFile.exists()) + throw new java.lang.Exception("fragment["+eItemType+", \""+sItemName+"\"] file named \""+aFile.getPath()+"\" already exists."); + + java.io.FileOutputStream aStream = new java.io.FileOutputStream(aFile); + java.io.OutputStreamWriter aWriter = new java.io.OutputStreamWriter(aStream, m_aDataSet.m_sEncoding); + aWriter.write(sXML, 0, sXML.length()); + aWriter.flush(); + aWriter.close(); + + m_aDataSet.m_aDebug.setDetailedInfo("fragment["+eItemType+", \""+sItemName+"\"] => \""+aFile.getPath()+"\" ... OK"); + } + + //___________________________________________ + + /** create all needed directory structures. + * + * First it try to clear old structures and + * create new ones afterwards. + * + * @throw [java.lang.Exception] + * if some of the needed structures + * could not be created successfully. + */ + private void createDirectoryStructures() + throws java.lang.Exception + { + m_aDataSet.m_aDebug.setGlobalInfo("create needed directory structures ..."); + + // delete simple files only; no directories! + // Because this tool may run inside + // a cvs environment its not a godd idea to do so. + boolean bFilesOnly = false; + FileHelper.makeDirectoryEmpty(m_aDataSet.m_aOutDir, bFilesOnly); + + if ( + (!m_aDataSet.m_aFragmentDirTypes.exists() && !m_aDataSet.m_aFragmentDirTypes.mkdir() ) || + (!m_aDataSet.m_aFragmentDirFilters.exists() && !m_aDataSet.m_aFragmentDirFilters.mkdir() ) || + (!m_aDataSet.m_aFragmentDirDetectServices.exists() && !m_aDataSet.m_aFragmentDirDetectServices.mkdir() ) || + (!m_aDataSet.m_aFragmentDirFrameLoaders.exists() && !m_aDataSet.m_aFragmentDirFrameLoaders.mkdir() ) || + (!m_aDataSet.m_aFragmentDirContentHandlers.exists() && !m_aDataSet.m_aFragmentDirContentHandlers.mkdir()) || + (!m_aDataSet.m_aFragmentDirModuleSWriter.exists() && !m_aDataSet.m_aFragmentDirModuleSWriter.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSWeb.exists() && !m_aDataSet.m_aFragmentDirModuleSWeb.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSGlobal.exists() && !m_aDataSet.m_aFragmentDirModuleSGlobal.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSCalc.exists() && !m_aDataSet.m_aFragmentDirModuleSCalc.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSDraw.exists() && !m_aDataSet.m_aFragmentDirModuleSDraw.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSImpress.exists() && !m_aDataSet.m_aFragmentDirModuleSImpress.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSMath.exists() && !m_aDataSet.m_aFragmentDirModuleSMath.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleSChart.exists() && !m_aDataSet.m_aFragmentDirModuleSChart.mkdir() ) || + (!m_aDataSet.m_aFragmentDirModuleOthers.exists() && !m_aDataSet.m_aFragmentDirModuleOthers.mkdir() ) + ) + { + throw new java.lang.Exception("some directory structures does not exists and could not be created successfully."); + } + } +} diff --git a/filter/source/config/tools/split/SplitterData.java b/filter/source/config/tools/split/SplitterData.java new file mode 100644 index 000000000000..daa09797da68 --- /dev/null +++ b/filter/source/config/tools/split/SplitterData.java @@ -0,0 +1,87 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +package com.sun.star.filter.config.tools.split; + +//_______________________________________________ + +import java.lang.*; +import java.io.*; +import com.sun.star.filter.config.tools.utils.*; + +//_______________________________________________ + +/** + * Data container for class Splitter. + * + * + */ +public class SplitterData +{ + /** can be used to generate some debug output. */ + public Logger m_aDebug; + + /** contains all configuration structures, for which the xml + fragments should be generated. */ + public Cache m_aCache; + + /** specify the output xml format. */ + public int m_nFormat; + + /** specify the encoding for the output xml files. */ + public java.lang.String m_sEncoding; + + /** directory to generate some generic views. */ + public java.io.File m_aOutDir; + + /** directories to generate all xml fragments there. + * Must be relative to "m_aOutDir"! */ + public java.io.File m_aFragmentDirTypes; + public java.io.File m_aFragmentDirFilters; + public java.io.File m_aFragmentDirDetectServices; + public java.io.File m_aFragmentDirFrameLoaders; + public java.io.File m_aFragmentDirContentHandlers; + + /** enable/disable grouping of filters by its application modules. */ + public boolean m_bSeperateFiltersByModule; + + /** directories to group all filter fragments ... if requested. + * Must be relative to "m_aOutDir/m_aFragmentDirFilters" and + * will be used only, if "m_bSeperateFiltersByModule" is set to true. */ + public java.io.File m_aFragmentDirModuleSWriter; + public java.io.File m_aFragmentDirModuleSWeb; + public java.io.File m_aFragmentDirModuleSGlobal; + public java.io.File m_aFragmentDirModuleSCalc; + public java.io.File m_aFragmentDirModuleSDraw; + public java.io.File m_aFragmentDirModuleSImpress; + public java.io.File m_aFragmentDirModuleSMath; + public java.io.File m_aFragmentDirModuleSChart; + public java.io.File m_aFragmentDirModuleOthers; + + /** file extension for generated xml fragments. */ + public java.lang.String m_sFragmentExtension; +} diff --git a/filter/source/config/tools/split/makefile.mk b/filter/source/config/tools/split/makefile.mk new file mode 100644 index 000000000000..a6942bfa6d5f --- /dev/null +++ b/filter/source/config/tools/split/makefile.mk @@ -0,0 +1,88 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ = ..$/..$/..$/.. +PRJNAME = filter +TARGET = FCFGSplit +PACKAGE = com$/sun$/star$/filter$/config$/tools$/split + +# --- Settings ----------------------------------------------------- + +.INCLUDE: settings.mk + +#----- compile .java files ----------------------------------------- + +OWNCOPY = \ + $(MISC)$/$(TARGET)_copied.done + +JARFILES = \ + ridl.jar \ + unoil.jar \ + jurt.jar \ + juh.jar \ + java_uno.jar + +CFGFILES = \ + FCFGSplit.cfg + +JAVACLASSFILES = \ + $(CLASSDIR)$/$(PACKAGE)$/SplitterData.class \ + $(CLASSDIR)$/$(PACKAGE)$/Splitter.class \ + $(CLASSDIR)$/$(PACKAGE)$/FCFGSplit.class + +CUSTOMMANIFESTFILE = \ + Manifest.mf + +MAXLINELENGTH = 100000 + +#----- make a jar from compiled files ------------------------------ + +JARCLASSDIRS = \ + com$/sun$/star$/filter$/config$/tools$/utils \ + com$/sun$/star$/filter$/config$/tools$/split + +JARTARGET = $(TARGET).jar + +JARCOMPRESS = TRUE + +# --- targets ----------------------------------------------------- + +.INCLUDE : target.mk + +ALLTAR : $(OWNCOPY) + +.IF "$(JARTARGETN)" != "" +$(JARTARGETN) : $(OWNCOPY) +.ENDIF + +$(OWNCOPY) : $(CFGFILES) + -$(MKDIR) $(CLASSDIR)$/$(PACKAGE) + $(COPY) $? $(CLASSDIR)$/$(PACKAGE) && $(TOUCH) $@ + +run : + @$(MKDIR) c:\temp\fragments + @$(JAVA) -jar $(CLASSDIR)$/FCFGSplit.jar debug=4 xmlfile=o:/src680/src.m7/officecfg/registry/data/org/openoffice/Office/TypeDetection.xcu outdir=c:/temp/fragments |