LibreOffice Module filter (master) 1
|
implements the service <type scope="com.sun.star.document">FilterFactory</type>. More...
#include <filterfactory.hxx>
Public Member Functions | |
FilterFactory (const css::uno::Reference< css::uno::XComponentContext > &rxContext) | |
standard ctor to connect this interface wrapper to the global filter cache instance ... More... | |
virtual | ~FilterFactory () override |
standard dtor. More... | |
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL | createInstance (const OUString &sFilter) override |
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL | createInstanceWithArguments (const OUString &sFilter, const css::uno::Sequence< css::uno::Any > &lArguments) override |
virtual css::uno::Sequence< OUString > SAL_CALL | getAvailableServiceNames () override |
virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL | createSubSetEnumerationByQuery (const OUString &sQuery) override |
Private Member Functions | |
std::vector< OUString > | impl_queryMatchByDocumentService (const QueryTokenizer &lTokens) const |
implement the container string query: "matchByDocumentService=:iflags=:eflags=:..." More... | |
std::vector< OUString > | impl_getSortedFilterList (const QueryTokenizer &lTokens) const |
implement the container string query: "getSortedFilterList()[:module=<xxx>]:[iflags=<xxx>][:eflags=<xxx>]" More... | |
std::vector< OUString > | impl_getSortedFilterListForModule (const OUString &sModule, sal_Int32 nIFlags, sal_Int32 nEFlags) const |
TODO document me. More... | |
Static Private Member Functions | |
static css::uno::Sequence< OUString > | impl_getListOfInstalledModules () |
TODO document me. More... | |
static std::vector< OUString > | impl_readSortedFilterListFromConfig (const OUString &sModule) |
read a specialized and sorted list of filter names from the configuration (matching the specified module) More... | |
Private Attributes | |
css::uno::Reference< css::uno::XComponentContext > | m_xContext |
implements the service <type scope="com.sun.star.document">FilterFactory</type>.
Definition at line 33 of file filterfactory.hxx.
|
explicit |
standard ctor to connect this interface wrapper to the global filter cache instance ...
define all possible parts of a filter query.
rxContext | reference to the uno service manager, which created this service instance. |
@descr syntax: "<query>[:<param>[=<value>]]" e.g.: "_query_writer:default_first:use_order:sort_prop=uiname"
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
Definition at line 55 of file filterfactory.cxx.
References filter::config::FilterCache::E_FILTER, and filter::config::BaseContainer::init().
|
overridevirtual |
standard dtor.
Definition at line 65 of file filterfactory.cxx.
|
overridevirtual |
Definition at line 70 of file filterfactory.cxx.
References createInstanceWithArguments().
|
overridevirtual |
Definition at line 76 of file filterfactory.cxx.
References comphelper::containerToSequence(), filter::config::FilterCache::E_FILTER, filter::config::GetTheFilterCache(), m_aMutex, m_xContext, PROPNAME_FILTERSERVICE, and comphelper::sequenceToContainer().
Referenced by createInstance().
|
overridevirtual |
Definition at line 141 of file filterfactory.cxx.
References impl_getSortedFilterList(), impl_queryMatchByDocumentService(), m_aMutex, pos, QUERY_IDENTIFIER_GET_SORTED_FILTERLIST, QUERY_IDENTIFIER_GETPREFERREDFILTERFORTYPE, QUERY_IDENTIFIER_MATCHBYDOCUMENTSERVICE, and filter::config::QueryTokenizer::valid().
|
overridevirtual |
Definition at line 116 of file filterfactory.cxx.
References comphelper::containerToSequence(), filter::config::FilterCache::E_FILTER, filter::config::FilterCache::getMatchingItemsByProps(), filter::config::GetTheFilterCache(), and PROPNAME_FILTERSERVICE.
|
staticprivate |
TODO document me.
Definition at line 407 of file filterfactory.cxx.
Referenced by impl_getSortedFilterList().
|
private |
implement the container string query: "getSortedFilterList()[:module=<xxx>]:[iflags=<xxx>][:eflags=<xxx>]"
lTokens | the list of query tokens and its values. |
Definition at line 365 of file filterfactory.cxx.
References impl_getListOfInstalledModules(), impl_getSortedFilterListForModule(), module, QUERY_PARAM_EFLAGS, QUERY_PARAM_IFLAGS, and QUERY_PARAM_MODULE.
Referenced by createSubSetEnumerationByQuery().
|
private |
TODO document me.
Definition at line 414 of file filterfactory.cxx.
References filter::config::FilterCache::E_FILTER, filter::config::FilterCache::getMatchingItemsByProps(), impl_readSortedFilterListFromConfig(), m_aMutex, and PROPNAME_DOCUMENTSERVICE.
Referenced by impl_getSortedFilterList().
|
private |
implement the container string query: "matchByDocumentService=:iflags=:eflags=:..."
lTokens | the list of query tokens and its values. |
Definition at line 193 of file filterfactory.cxx.
References filter::config::FilterCache::E_FILTER, filter::config::FilterCache::getItem(), filter::config::FilterCache::getItemNames(), comphelper::SequenceAsHashMap::getUnpackedValueOrDefault(), m_aMutex, PROPNAME_DOCUMENTSERVICE, PROPNAME_FLAGS, QUERY_CONSTVALUE_ALL, QUERY_IDENTIFIER_MATCHBYDOCUMENTSERVICE, QUERY_PARAM_EFLAGS, QUERY_PARAM_IFLAGS, and sDocumentService.
Referenced by createSubSetEnumerationByQuery().
|
staticprivate |
read a specialized and sorted list of filter names from the configuration (matching the specified module)
sModule | the module for which the sorted list should be retrieved for. |
Definition at line 462 of file filterfactory.cxx.
References PROPNAME_SORTEDFILTERLIST, and comphelper::sequenceToContainer().
Referenced by impl_getSortedFilterListForModule().
|
private |
Definition at line 39 of file filterfactory.hxx.
Referenced by createInstanceWithArguments().