summaryrefslogtreecommitdiff
path: root/svx/source/dialog/pfiledlg.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/dialog/pfiledlg.cxx')
-rw-r--r--svx/source/dialog/pfiledlg.cxx186
1 files changed, 0 insertions, 186 deletions
diff --git a/svx/source/dialog/pfiledlg.cxx b/svx/source/dialog/pfiledlg.cxx
deleted file mode 100644
index 6a0d6364e844..000000000000
--- a/svx/source/dialog/pfiledlg.cxx
+++ /dev/null
@@ -1,186 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <sfx2/docfile.hxx>
-#include <com/sun/star/plugin/PluginDescription.hpp>
-#include <com/sun/star/plugin/PluginManager.hpp>
-#include <com/sun/star/plugin/XPluginManager.hpp>
-#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
-
-#include <comphelper/processfactory.hxx>
-
-#include "svx/pfiledlg.hxx"
-#include <svx/dialogs.hrc>
-
-#include <svx/dialmgr.hxx>
-#include <list>
-
-using namespace ::com::sun::star;
-
-sal_Char const sAudio[] = "audio";
-sal_Char const sVideo[] = "video";
-
-// Filedialog to insert Plugin-Fileformats
-
-ErrCode SvxPluginFileDlg::Execute()
-{
- return maFileDlg.Execute();
-}
-
-OUString SvxPluginFileDlg::GetPath() const
-{
- return maFileDlg.GetPath();
-}
-
-SvxPluginFileDlg::SvxPluginFileDlg (vcl::Window *, sal_uInt16 nKind )
- : maFileDlg(ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, SFXWB_INSERT)
-{
- // set title of the dialogwindow
- switch (nKind)
- {
- case SID_INSERT_SOUND :
- {
- maFileDlg.SetTitle(SVX_RESSTR(STR_INSERT_SOUND_TITLE));
- }
- break;
- case SID_INSERT_VIDEO :
- {
- maFileDlg.SetTitle(SVX_RESSTR(STR_INSERT_VIDEO_TITLE));
- }
- break;
- }
-
- // fill the filterlist of the filedialog with data of installed plugins
- uno::Reference< uno::XComponentContext > xContext = comphelper::getProcessComponentContext();
- uno::Reference< plugin::XPluginManager > rPluginManager( plugin::PluginManager::create(xContext) );
-
- const uno::Sequence<plugin::PluginDescription > aSeq( rPluginManager->getPluginDescriptions() );
- const plugin::PluginDescription* pDescription = aSeq.getConstArray();
- sal_Int32 nAnzahlPlugins = rPluginManager->getPluginDescriptions().getLength();
-
- std::list< OUString > aPlugNames;
- std::list< OUString > aPlugExtensions;
- std::list< OUString >::iterator j;
- std::list< OUString >::iterator k;
- std::list< OUString >::const_iterator end;
-
- for ( int i = 0; i < nAnzahlPlugins; i++ )
- {
- OUString aStrPlugMIMEType( pDescription[i].Mimetype );
- OUString aStrPlugName( pDescription[i].Description );
- OUString aStrPlugExtension( pDescription[i].Extension );
-
- aStrPlugMIMEType = aStrPlugMIMEType.toAsciiLowerCase();
- aStrPlugExtension = aStrPlugExtension.toAsciiLowerCase();
-
- if ( ( nKind == SID_INSERT_SOUND && aStrPlugMIMEType.startsWith( sAudio ) ) ||
- ( nKind == SID_INSERT_VIDEO && aStrPlugMIMEType.startsWith( sVideo ) ) )
- {
- // extension already in the filterlist of the filedlg ?
- bool bAlreadyExist = false;
- for ( j = aPlugExtensions.begin(), end = aPlugExtensions.end(); j != end && !bAlreadyExist; ++j )
- {
- bAlreadyExist = (j->indexOf( aStrPlugExtension ) != -1 );
- }
-
- if ( !bAlreadyExist )
- {
- // filterdescription already there?
- // (then append the new extension to the existing filter)
- int nfound = -1;
- for ( j = aPlugNames.begin(),
- k = aPlugExtensions.begin(),
- end = aPlugNames.end();
- j != end && nfound != 0; )
- {
- if ( ( nfound = j->indexOf( aStrPlugName ) ) == 0 )
- {
- if ( !aStrPlugExtension.isEmpty() )
- aStrPlugExtension += ";";
- aStrPlugExtension += *k;
-
- // remove old entry, increment (iterators are invalid thereafter, thus the postincrement)
- aPlugNames.erase(j++);
- aPlugExtensions.erase(k++);
-
- // update end iterator (which may be invalid, too!)
- end = aPlugNames.end();
- }
- else
- {
- // next element
- ++j; ++k;
- }
- }
-
- // build filterdescription
- aStrPlugName += " (";
- aStrPlugName += aStrPlugExtension;
- aStrPlugName += ")";
-
- // use a own description for the video-formate avi, mov and mpeg
- // the descriptions of these MIME-types are not very meaningful
- const sal_Char sAVI[] = "*.avi";
- const sal_Char sMOV[] = "*.mov";
- const sal_Char sMPG[] = "*.mpg";
- const sal_Char sMPE[] = "*.mpe";
- const sal_Char sMPEG[] = "*.mpeg";
-
- if ( aStrPlugExtension.equalsIgnoreAsciiCase( sAVI ) )
- aStrPlugName = SVX_RESSTR( STR_INSERT_VIDEO_EXTFILTER_AVI );
- else if ( aStrPlugExtension.equalsIgnoreAsciiCase( sMOV ) )
- aStrPlugName = SVX_RESSTR( STR_INSERT_VIDEO_EXTFILTER_MOV );
- else if ( aStrPlugExtension.indexOf( sMPG ) != -1 ||
- aStrPlugExtension.indexOf( sMPE ) != -1 ||
- aStrPlugExtension.indexOf( sMPEG ) != -1 )
- aStrPlugName = SVX_RESSTR(STR_INSERT_VIDEO_EXTFILTER_MPEG);
-
- aPlugNames.push_back( aStrPlugName );
- aPlugExtensions.push_back( aStrPlugExtension );
- }
- }
- }
-
- // add filter to dialog
- for ( j = aPlugNames.begin(),
- k = aPlugExtensions.begin(),
- end = aPlugNames.end();
- j != end; ++j, ++k )
- {
- maFileDlg.AddFilter( *j, *k );
- }
-
- // add the All-Filter
- OUString aAllFilter( ResId( STR_EXTFILTER_ALL, DIALOG_MGR() ).toString() );
- maFileDlg.AddFilter(aAllFilter, "*.*");
-
- // and activate him
- maFileDlg.SetCurrentFilter( aAllFilter );
-}
-
-SvxPluginFileDlg::~SvxPluginFileDlg()
-{
-}
-
-void SvxPluginFileDlg::SetContext( sfx2::FileDialogHelper::Context _eNewContext )
-{
- maFileDlg.SetContext( _eNewContext );
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */