summaryrefslogtreecommitdiff
path: root/extensions/source/propctrlr/listselectiondlg.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/source/propctrlr/listselectiondlg.cxx')
-rw-r--r--extensions/source/propctrlr/listselectiondlg.cxx170
1 files changed, 0 insertions, 170 deletions
diff --git a/extensions/source/propctrlr/listselectiondlg.cxx b/extensions/source/propctrlr/listselectiondlg.cxx
deleted file mode 100644
index e67279a08..000000000
--- a/extensions/source/propctrlr/listselectiondlg.cxx
+++ /dev/null
@@ -1,170 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * 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_extensions.hxx"
-#include "listselectiondlg.hxx"
-#include "listselectiondlg.hrc"
-
-#include "modulepcr.hxx"
-#include "formresid.hrc"
-#include "formstrings.hxx"
-#include <vcl/msgbox.hxx>
-
-/** === begin UNO includes === **/
-/** === end UNO includes === **/
-
-//........................................................................
-namespace pcr
-{
-//........................................................................
-
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::beans;
-
- //====================================================================
- //= ListSelectionDialog
- //====================================================================
- //--------------------------------------------------------------------
- ListSelectionDialog::ListSelectionDialog( Window* _pParent, const Reference< XPropertySet >& _rxListBox,
- const ::rtl::OUString& _rPropertyName, const String& _rPropertyUIName )
- :ModalDialog( _pParent, PcrRes( RID_DLG_SELECTION ) )
- ,m_aLabel ( this, PcrRes( FT_ENTRIES ) )
- ,m_aEntries ( this, PcrRes( LB_ENTRIES ) )
- ,m_aOK ( this, PcrRes( PB_OK ) )
- ,m_aCancel ( this, PcrRes( PB_CANCEL ) )
- ,m_aHelp ( this, PcrRes( PB_HELP ) )
- ,m_xListBox ( _rxListBox )
- ,m_sPropertyName( _rPropertyName )
- {
- FreeResource();
-
- OSL_PRECOND( m_xListBox.is(), "ListSelectionDialog::ListSelectionDialog: invalid list box!" );
-
- SetText( _rPropertyUIName );
- m_aLabel.SetText( _rPropertyUIName );
-
- initialize( );
- }
-
- //------------------------------------------------------------------------
- short ListSelectionDialog::Execute()
- {
- short nResult = ModalDialog::Execute();
-
- if ( RET_OK == nResult )
- commitSelection();
-
- return nResult;
- }
-
- //--------------------------------------------------------------------
- void ListSelectionDialog::initialize( )
- {
- if ( !m_xListBox.is() )
- return;
-
- m_aEntries.SetStyle( GetStyle() | WB_SIMPLEMODE );
-
- try
- {
- // initialize the multi-selection flag
- sal_Bool bMultiSelection = sal_False;
- OSL_VERIFY( m_xListBox->getPropertyValue( PROPERTY_MULTISELECTION ) >>= bMultiSelection );
- m_aEntries.EnableMultiSelection( bMultiSelection );
-
- // fill the list box with all entries
- Sequence< ::rtl::OUString > aListEntries;
- OSL_VERIFY( m_xListBox->getPropertyValue( PROPERTY_STRINGITEMLIST ) >>= aListEntries );
- fillEntryList( aListEntries );
-
- // select entries according to the property
- Sequence< sal_Int16 > aSelection;
- OSL_VERIFY( m_xListBox->getPropertyValue( m_sPropertyName ) >>= aSelection );
- selectEntries( aSelection );
- }
- catch( const Exception& )
- {
- OSL_FAIL( "ListSelectionDialog::initialize: caught an exception!" );
- }
- }
-
- //--------------------------------------------------------------------
- void ListSelectionDialog::commitSelection()
- {
- if ( !m_xListBox.is() )
- return;
-
- Sequence< sal_Int16 > aSelection;
- collectSelection( aSelection );
-
- try
- {
- m_xListBox->setPropertyValue( m_sPropertyName, makeAny( aSelection ) );
- }
- catch( const Exception& )
- {
- OSL_FAIL( "ListSelectionDialog::commitSelection: caught an exception!" );
- }
- }
-
- //--------------------------------------------------------------------
- void ListSelectionDialog::fillEntryList( const Sequence< ::rtl::OUString >& _rListEntries )
- {
- m_aEntries.Clear();
- const ::rtl::OUString* _pListEntries = _rListEntries.getConstArray();
- const ::rtl::OUString* _pListEntriesEnd = _rListEntries.getConstArray() + _rListEntries.getLength();
- for ( ; _pListEntries < _pListEntriesEnd; ++_pListEntries )
- m_aEntries.InsertEntry( *_pListEntries );
- }
-
- //--------------------------------------------------------------------
- void ListSelectionDialog::collectSelection( Sequence< sal_Int16 >& /* [out] */ _rSelection )
- {
- sal_uInt16 nSelectedCount = m_aEntries.GetSelectEntryCount( );
- _rSelection.realloc( nSelectedCount );
- sal_Int16* pSelection = _rSelection.getArray();
- for ( sal_uInt16 selected = 0; selected < nSelectedCount; ++selected, ++pSelection )
- *pSelection = static_cast< sal_Int16 >( m_aEntries.GetSelectEntryPos( selected ) );
- }
-
- //--------------------------------------------------------------------
- void ListSelectionDialog::selectEntries( const Sequence< sal_Int16 >& /* [in ] */ _rSelection )
- {
- m_aEntries.SetNoSelection();
- const sal_Int16* pSelection = _rSelection.getConstArray();
- const sal_Int16* pSelectionEnd = _rSelection.getConstArray() + _rSelection.getLength();
- for ( ; pSelection != pSelectionEnd; ++pSelection )
- m_aEntries.SelectEntryPos( *pSelection );
- }
-
-//........................................................................
-} // namespace pcr
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */