diff options
author | Frank Schönheit <fs@openoffice.org> | 2001-08-01 10:06:48 +0000 |
---|---|---|
committer | Frank Schönheit <fs@openoffice.org> | 2001-08-01 10:06:48 +0000 |
commit | 0986bb059aab6d7f14b5af78ae9fd3058fa443fc (patch) | |
tree | 2115b07d0091dd19a6de861357c64a1121c59f51 /extensions/source | |
parent | d053407af70b23623b6f65feca1c55e5f75702a4 (diff) |
initial checkin - address book auto pilot - the dialog itself
Diffstat (limited to 'extensions/source')
-rw-r--r-- | extensions/source/abpilot/abspilot.cxx | 441 | ||||
-rw-r--r-- | extensions/source/abpilot/abspilot.hxx | 172 | ||||
-rw-r--r-- | extensions/source/abpilot/abspilot.src | 499 |
3 files changed, 1112 insertions, 0 deletions
diff --git a/extensions/source/abpilot/abspilot.cxx b/extensions/source/abpilot/abspilot.cxx new file mode 100644 index 000000000000..8746cfc524cb --- /dev/null +++ b/extensions/source/abpilot/abspilot.cxx @@ -0,0 +1,441 @@ +/************************************************************************* + * + * $RCSfile: abspilot.cxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: fs $ $Date: 2001-08-01 11:06:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (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.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc.. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef EXTENSIONS_ABSPILOT_HXX +#include "abspilot.hxx" +#endif +#ifndef __EXTENSIONS_INC_EXTENSIO_HRC__ +#include "extensio.hrc" +#endif +#ifndef EXTENSIONS_ABPRESID_HRC +#include "abpresid.hrc" +#endif +#ifndef _EXTENSIONS_COMPONENT_MODULE_HXX_ +#include "componentmodule.hxx" +#endif +#ifndef _TOOLS_DEBUG_HXX +#include <tools/debug.hxx> +#endif +#ifndef EXTENSIONS_ABP_TYPESELECTIONPAGE_HXX +#include "typeselectionpage.hxx" +#endif +#ifndef EXTENSIONS_ABP_ADMINDIALOG_INVOKATION_PAGE_HXX +#include "admininvokationpage.hxx" +#endif +#ifndef EXTENSIONS_ABP_TABLESELECTIONPAGE_HXX +#include "tableselectionpage.hxx" +#endif +#ifndef _SV_WAITOBJ_HXX +#include <vcl/waitobj.hxx> +#endif +#ifndef _SV_MSGBOX_HXX +#include <vcl/msgbox.hxx> +#endif +#ifndef EXTENSIONS_ABP_ABPFINALPAGE_HXX +#include "abpfinalpage.hxx" +#endif +#ifndef EXTENSIONS_ABP_FIELDMAPPINGPAGE_HXX +#include "fieldmappingpage.hxx" +#endif +#ifndef EXTENSIONS_ABP_FIELDMAPPINGIMPL_HXX +#include "fieldmappingimpl.hxx" +#endif + +//......................................................................... +namespace abp +{ +//......................................................................... + +#define STATE_SELECT_ABTYPE 0 +#define STATE_INVOKE_ADMIN_DIALOG 1 +#define STATE_TABLE_SELECTION 2 +#define STATE_MANUAL_FIELD_MAPPING 3 +#define STATE_FINAL_CONFIRM 4 + + using namespace ::svt; + using namespace ::com::sun::star::uno; + using namespace ::com::sun::star::lang; + + //===================================================================== + //= OAddessBookSourcePilot + //===================================================================== + //--------------------------------------------------------------------- + OAddessBookSourcePilot::OAddessBookSourcePilot(Window* _pParent, const Reference< XMultiServiceFactory >& _rxORB) + :OAddessBookSourcePilot_Base(_pParent, ModuleRes(RID_DLG_ADDRESSBOOKSOURCEPILOT), WZB_FINISH | WZB_CANCEL | WZB_NEXT | WZB_PREVIOUS) + ,m_xORB(_rxORB) + ,m_aNewDataSource(_rxORB) + ,m_eNewDataSourceType( AST_INVALID ) + { + SetPageSizePixel(LogicToPixel(Size(WINDOW_SIZE_X, WINDOW_SIZE_Y), MAP_APPFONT)); + + ShowButtonFixedLine(sal_True); + + m_pPrevPage->SetHelpId(HID_ABSPILOT_PREVIOUS); + m_pNextPage->SetHelpId(HID_ABSPILOT_NEXT); + m_pCancel->SetHelpId(HID_ABSPILOT_CANCEL); + m_pFinish->SetHelpId(HID_ABSPILOT_FINISH); + + m_pCancel->SetClickHdl( LINK( this, OAddessBookSourcePilot, OnCancelClicked) ); + + // some initial settings +#ifdef UNX + m_aSettings.eType = AST_MORK; +#else + m_aSettings.eType = AST_OE; +#endif + m_aSettings.sDataSourceName = String(ModuleRes(RID_STR_DEFAULT_NAME)); + + defaultButton(WZB_NEXT); + enableButtons(WZB_FINISH, sal_False); + ActivatePage(); + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::implCommitAll() + { + // in real, the data source already exists in the data source context + // Thus, if the user changed the name, we have to rename the data source + if ( m_aSettings.sDataSourceName != m_aNewDataSource.getName() ) + m_aNewDataSource.rename( m_aSettings.sDataSourceName ); + + // 1. the data source + // nothing to do anymore, it already exists + + // 2. write the data source / table names into the configuration + addressconfig::writeTemplateAddressSource( getORB(), m_aSettings.sDataSourceName, m_aSettings.sSelectedTable ); + + // write the field mapping + fieldmapping::writeTemplateAddressFieldMapping( getORB(), m_aSettings.aFieldMapping ); + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::implCleanup() + { + if ( m_aNewDataSource.isValid() ) + m_aNewDataSource.remove(); + } + + //--------------------------------------------------------------------- + IMPL_LINK( OAddessBookSourcePilot, OnCancelClicked, void*, NOTINTERESTEDIN ) + { + // do cleanups + implCleanup(); + + // reset the click hdl + m_pCancel->SetClickHdl( Link() ); + // simulate the click again - this time, the default handling of the button will strike .... + m_pCancel->Click(); + + return 0L; + } + + //--------------------------------------------------------------------- + BOOL OAddessBookSourcePilot::Close() + { + implCleanup(); + + return OAddessBookSourcePilot_Base::Close(); + } + + //--------------------------------------------------------------------- + sal_Bool OAddessBookSourcePilot::onFinish(sal_Int32 _nResult) + { + if (!OAddessBookSourcePilot_Base::onFinish(_nResult)) + return sal_False; + + if (RET_OK != _nResult) + return sal_True; + + implCommitAll(); + + addressconfig::markPilotSuccess( getORB() ); + + return sal_True; + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::enterState(sal_uInt16 _nState) + { + switch ( _nState ) + { + case STATE_FINAL_CONFIRM: + if ( !needManualFieldMapping( ) ) + implDoAutoFieldMapping(); + break; + + case STATE_TABLE_SELECTION: + implDefaultTableName(); + break; + } + + OAddessBookSourcePilot_Base::enterState(_nState); + } + + //--------------------------------------------------------------------- + sal_Bool OAddessBookSourcePilot::leaveState(sal_uInt16 _nState) + { + if (!OAddessBookSourcePilot_Base::leaveState(_nState)) + return sal_False; + + switch ( _nState ) + { + case STATE_SELECT_ABTYPE: + implCreateDataSource(); + // create the data source, if necessary (in some cases, it may already have been created, 'cause it was + // needed for determining the next state) + break; + } + + return sal_True; + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::implDefaultTableName() + { + const StringBag& rTableNames = getDataSource().getTableNames(); + if ( rTableNames.end() != rTableNames.find( getSettings().sSelectedTable ) ) + // already a valid table selected + return; + + const sal_Char* pGuess = NULL; + switch ( getSettings().eType ) + { + case AST_MORK : pGuess = "Personal Address Book"; break; + case AST_LDAP : pGuess = "LDAP Directory"; break; + } + const ::rtl::OUString sGuess = ::rtl::OUString::createFromAscii( pGuess ); + if ( rTableNames.end() != rTableNames.find( sGuess ) ) + getSettings().sSelectedTable = sGuess; + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::implDoAutoFieldMapping() + { + DBG_ASSERT( !needManualFieldMapping( ), "OAddessBookSourcePilot::implDoAutoFieldMapping: invalid call!" ); + + fieldmapping::defaultMapping( getORB(), m_aSettings.aFieldMapping ); + } + + //--------------------------------------------------------------------- + void OAddessBookSourcePilot::implCreateDataSource() + { + if (m_aNewDataSource.isValid()) + { // we already have a data source object + if ( m_aSettings.eType == m_eNewDataSourceType ) + // and it already has the correct type + return; + + // it has a wrong type -> remove it + m_aNewDataSource.remove(); + } + + ODataSourceContext aContext( getORB() ); + aContext.disambiguate( m_aSettings.sDataSourceName ); + + switch (m_aSettings.eType) + { + case AST_MORK: + m_aNewDataSource = aContext.createNewMORK( m_aSettings.sDataSourceName ); + break; + + case AST_LDAP: + m_aNewDataSource = aContext.createNewLDAP( m_aSettings.sDataSourceName ); + break; + + case AST_OUTLOOK: + m_aNewDataSource = aContext.createNewOutlook( m_aSettings.sDataSourceName ); + break; + + case AST_OE: + m_aNewDataSource = aContext.createNewOE( m_aSettings.sDataSourceName ); + break; + + case AST_OTHER: + m_aNewDataSource = aContext.createNewDBase( m_aSettings.sDataSourceName ); + break; + } + m_eNewDataSourceType = m_aSettings.eType; + } + + //--------------------------------------------------------------------- + sal_Bool OAddessBookSourcePilot::connectToDataSource( sal_Bool _bForceReConnect ) + { + DBG_ASSERT( m_aNewDataSource.isValid(), "OAddessBookSourcePilot::implConnect: invalid current data source!" ); + + WaitObject aWaitCursor( this ); + if ( _bForceReConnect && m_aNewDataSource.isConnected( ) ) + m_aNewDataSource.disconnect( ); + + return m_aNewDataSource.connect( this ); + } + + //--------------------------------------------------------------------- + OWizardPage* OAddessBookSourcePilot::createPage(sal_uInt16 _nState) + { + switch (_nState) + { + case STATE_SELECT_ABTYPE: + return new TypeSelectionPage( this ); + + case STATE_INVOKE_ADMIN_DIALOG: + return new AdminDialogInvokationPage( this ); + + case STATE_TABLE_SELECTION: + return new TableSelectionPage( this ); + + case STATE_MANUAL_FIELD_MAPPING: + return new FieldMappingPage( this ); + + case STATE_FINAL_CONFIRM: + return new FinalPage( this ); + + default: + DBG_ERROR("OAddessBookSourcePilot::createPage: invalid state!"); + return NULL; + } + } + + //--------------------------------------------------------------------- + sal_uInt16 OAddessBookSourcePilot::determineNextState(sal_uInt16 _nCurrentState) + { + switch (_nCurrentState) + { + case STATE_SELECT_ABTYPE: + + if ( needAdminInvokationPage() ) + return STATE_INVOKE_ADMIN_DIALOG; + // _NO_ break !!! + + case STATE_INVOKE_ADMIN_DIALOG: + { + // determining the next state here is somewhat more complex: it depends on the type selected, + // and on the number of tables in the data source specified by the user + + // ........................................................ + // create the new data source + implCreateDataSource( ); + + // ........................................................ + // if we're here, we have all settings necessary for connecting to the data source + if ( !connectToDataSource( sal_False ) ) + // connecting did not succeed -> do not allow traveling (indicated by returning WZS_INVALID_STATE) + return WZS_INVALID_STATE; + + // ........................................................ + // get the tables of the connection + const StringBag& aTables = m_aNewDataSource.getTableNames(); + if ( aTables.size() > 1 ) + // in the next step, we need to determine the primary address table + return STATE_TABLE_SELECTION; + + // ........................................................ + // do we have any tables ? + if ( 0 == aTables.size() ) + { // ... no + QueryBox aQuery( this, ModuleRes( RID_QRY_NOTABLES ) ); + if ( RET_YES == aQuery.Execute() ) + { // but the user chose to use this data source, anyway + // -> go to the final page (no field mapping possible at all ...) + return STATE_FINAL_CONFIRM; + } + + // not allowed to leave the page + return WZS_INVALID_STATE; + } + + // remember the one and only table we have + m_aSettings.sSelectedTable = *aTables.begin(); + } + // _NO_ break !!! + + case STATE_TABLE_SELECTION: + + // ........................................................ + // do we need a field mapping provided by the user? + if ( needManualFieldMapping( ) ) + return STATE_MANUAL_FIELD_MAPPING; + + // ........................................................ + // we're nearly done ... + return STATE_FINAL_CONFIRM; + + case STATE_MANUAL_FIELD_MAPPING: + return STATE_FINAL_CONFIRM; + + default: + DBG_ERROR("OAddessBookSourcePilot::determineNextState: invalid current state!"); + } + + DBG_ERROR("OAddessBookSourcePilot::determineNextState: no next state available!"); + return WZS_INVALID_STATE; + } + +//......................................................................... +} // namespace abp +//......................................................................... + +/************************************************************************* + * history: + * $Log: not supported by cvs2svn $ + * + * Revision 1.0 26.07.01 08:45:44 fs + ************************************************************************/ + diff --git a/extensions/source/abpilot/abspilot.hxx b/extensions/source/abpilot/abspilot.hxx new file mode 100644 index 000000000000..66020d849662 --- /dev/null +++ b/extensions/source/abpilot/abspilot.hxx @@ -0,0 +1,172 @@ +/************************************************************************* + * + * $RCSfile: abspilot.hxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: fs $ $Date: 2001-08-01 11:06:40 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (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.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc.. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef EXTENSIONS_ABSPILOT_HXX +#define EXTENSIONS_ABSPILOT_HXX + +#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#endif +#ifndef _SVTOOLS_WIZARDMACHINE_HXX_ +#include <svtools/wizardmachine.hxx> +#endif +#ifndef EXTENSIONS_ABP_ADDRESSSETTINGS_HXX +#include "addresssettings.hxx" +#endif +#ifndef _SV_FIXED_HXX +#include <vcl/fixed.hxx> +#endif +#ifndef EXTENSIONS_ABP_DATASOURCEHANDLING_HXX +#include "datasourcehandling.hxx" +#endif + +//......................................................................... +namespace abp +{ +//......................................................................... + + //===================================================================== + //= OAddessBookSourcePilot + //===================================================================== + typedef ::svt::OWizardMachine OAddessBookSourcePilot_Base; + class OAddessBookSourcePilot : public OAddessBookSourcePilot_Base + { + protected: + ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > + m_xORB; + AddressSettings m_aSettings; + + ODataSource m_aNewDataSource; + AddressSourceType m_eNewDataSourceType; + + public: + /// ctor + OAddessBookSourcePilot( + Window* _pParent, + const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB); + + /// get the service factory which was used to create the dialog + ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > + getORB() { return m_xORB; } + AddressSettings& getSettings() { return m_aSettings; } + const AddressSettings& getSettings() const { return m_aSettings; } + + const ODataSource& getDataSource() const { return m_aNewDataSource; } + + sal_Bool connectToDataSource( sal_Bool _bForceReConnect ); + + void travelNext( ) { OAddessBookSourcePilot_Base::travelNext(); } + + protected: + // OWizardMachine overridables + virtual ::svt::OWizardPage* createPage(sal_uInt16 _nState); + virtual void enterState(sal_uInt16 _nState); + virtual sal_Bool leaveState(sal_uInt16 _nState); + virtual sal_uInt16 determineNextState(sal_uInt16 _nCurrentState); + virtual sal_Bool onFinish(sal_Int32 _nResult); + + virtual BOOL Close(); + + private: + DECL_LINK( OnCancelClicked, void* ); + + /** creates a new data source of the type indicated by m_aSettings + <p>If another data source has been created before, this one is deleted.</p> + */ + void implCreateDataSource(); + + /// does an automatic field mapping (possible for all types except AST_OTHER) + void implDoAutoFieldMapping(); + + /// guesses a default for the table name, if no valid table is selected + void implDefaultTableName(); + + /// check if with the current settings, we would need to invoke he administration dialog for more details about the data source + inline sal_Bool needAdminInvokationPage() const + { + return ( (AST_LDAP == m_aSettings.eType) + || (AST_OTHER == m_aSettings.eType) + ); + } + + /// checks if we need a manual (user-guided) field mapping + inline sal_Bool needManualFieldMapping() const + { + return ( AST_OTHER == m_aSettings.eType ); + } + + void implCleanup(); + void implCommitAll(); + }; + +//......................................................................... +} // namespace abp +//......................................................................... + +#endif // EXTENSIONS_ABSPILOT_HXX + +/************************************************************************* + * history: + * $Log: not supported by cvs2svn $ + * + * Revision 1.0 26.07.01 08:45:43 fs + ************************************************************************/ + diff --git a/extensions/source/abpilot/abspilot.src b/extensions/source/abpilot/abspilot.src new file mode 100644 index 000000000000..21b2736c8ccb --- /dev/null +++ b/extensions/source/abpilot/abspilot.src @@ -0,0 +1,499 @@ +/************************************************************************* + * + * $RCSfile: abspilot.src,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: fs $ $Date: 2001-08-01 11:06:48 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (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.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc.. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef EXTENSIONS_ABPRESID_HRC +#include "abpresid.hrc" +#endif + +//........................................................................ +ModalDialog RID_DLG_ADDRESSBOOKSOURCEPILOT +{ + Text = "Autopilot Adress-Datenquelle" ; + Text [ english ] = "Autopilot Address Book Data Source" ; + Text [ english_us ] = "Autopilot Address Book Data Source" ; + + OutputSize = TRUE ; + SVLook = TRUE ; + Moveable = TRUE ; + Closeable = TRUE ; + Hide = TRUE; +}; + +//........................................................................ +TabPage RID_PAGE_SELECTABTYPE +{ + SVLook = TRUE ; + Size = MAP_APPFONT ( WINDOW_SIZE_X , WINDOW_SIZE_Y ) ; + Text = "Adressbuch-Typ"; + Text [ english ] = "Address Book Type"; + Text [ english_us ] = "Address Book Type"; + + FixedLine FL_SEPARATOR + { + Pos = MAP_APPFONT ( 4, 3 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + + Text = "Willkommen"; + Text [ english ] = "Welcome"; + Text [ english_us ] = "Welcome"; + }; + + FixedText FT_TYPE_HINTS + { + Pos = MAP_APPFONT ( 7, 12 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 40 ) ; + WordBreak = TRUE; + + Text = "%PRODUCTNAME bietet Ihnen die Mglichkeit, auf bereits in Ihrem Systemvorhandene Adress-Daten zuzugreifen.\n" + "Dazu wird eine %PRODUCTNAME Datenquelle angelegt, unter der Ihre Adressbcher als Tabellen zugnglich sind.\n\n" + "Dieser Auto-Pilot untersttzt sie bei der Einrichtung dieser Datenquelle."; + Text [ english ] = "%PRODUCTNAME allows you to access address data which is already present in your system.\n" + "For this, a new %PRODUCTNAME data source will be created, where your address data is available as tables.\n\n" + "This auto pilot will assist you in the creation of this data source."; + Text [ english_us ] = "%PRODUCTNAME allows you to access address data which is already present in your system.\n" + "For this, a new %PRODUCTNAME data source will be created, where your address data is available as tables.\n\n" + "This auto pilot will assist you in the creation of this data source."; + }; + + FixedLine FL_TYPE + { + Pos = MAP_APPFONT ( 4, 59 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + + Text = "Typ"; + Text [ english ] = "Type"; + Text [ english_us ] = "Type"; + }; + FixedText FT_CHOOSE_TYPE + { + Pos = MAP_APPFONT ( 7, 68 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 8 ) ; + + Text = "Bitte whlen sie den Typ Ihres externen Adressbuches:"; + Text [ english ] = "Please choose the type of your external address book:"; + Text [ english_us ] = "Please choose the type of your external address book:"; + }; + + RadioButton RB_MORK + { + Pos = MAP_APPFONT ( 15, 79 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 22, 8 ) ; + + Text = "Mozilla / Netscape 6.x"; + Text [ english ] = "Mozilla / Netscape 6.x"; + Text [ english_us ] = "Mozilla / Netscape 6.x"; + Group = TRUE; + }; + RadioButton RB_LDAP + { + Pos = MAP_APPFONT ( 15, 90 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 22, 8 ) ; + + Text = "LDAP Adress-Bestand"; + Text [ english ] = "LDAP address data"; + Text [ english_us ] = "LDAP address data"; + }; + RadioButton RB_OUTLOOK + { + Pos = MAP_APPFONT ( 15, 101 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 22, 8 ) ; + + Text = "Outlook Adressbuch"; + Text [ english ] = "Outlook address book"; + Text [ english_us ] = "Outlook address book"; + }; + RadioButton RB_OUTLOOKEXPRESS + { + Pos = MAP_APPFONT ( 15, 112 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 22, 8 ) ; + + Text = "Windows System-Adressbuch"; + Text [ english ] = "Windows system address book"; + Text [ english_us ] = "Windows system address book"; + }; + RadioButton RB_OTHER + { + Pos = MAP_APPFONT ( 15, 123 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 22, 8 ) ; + + Text = "andere externe Datenquelle"; + Text [ english ] = "other external data source"; + Text [ english_us ] = "other external data source"; + }; +}; + +//........................................................................ +TabPage RID_PAGE_ADMININVOKATION +{ + SVLook = TRUE ; + Size = MAP_APPFONT ( WINDOW_SIZE_X , WINDOW_SIZE_Y ) ; + Text = "Adressbuch-Details"; + Text [ english ] = "Address Book Details"; + Text [ english_us ] = "Address Book Details"; + + FixedLine FL_SEPARATOR + { + Pos = MAP_APPFONT ( 4, 3 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + }; + + FixedText FT_ADMINEXPLANATION + { + Pos = MAP_APPFONT ( 7, 12 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 48 ) ; + WordBreak = TRUE; + + Text = "Um die neue Datenquelle einzurichten, sind noch weitergehende Angaben notwendig.\n\n" + "Dafr wird, sobald die auf den unten befindlichen Button drcken, ein weiterer Dialog geffnet. " + "Nehmen Sie dort bitte die fehlenden Einstellungen vor."; + Text [ english ] = "To set up the new data source, some additional information is needed.\n\n" + "For this, another dialog will be opened, as soon as you press the button below. " + "There, please specify all missing settings."; + Text [ english_us ] = "To set up the new data source, some additional information is needed.\n\n" + "For this, another dialog will be opened, as soon as you press the button below. " + "There, please specify all missing settings."; + }; + + PushButton PB_INVOKE_ADMIN_DIALOG + { + Pos = MAP_APPFONT ( ( WINDOW_SIZE_X - BUTTON_SIZE_X ) / 2, 63 ) ; + Size = MAP_APPFONT ( BUTTON_SIZE_X, BUTTON_SIZE_Y ) ; + + Text = "Einstellungen"; + Text [ english ] = "Settings"; + Text [ english_us ] = "Settings"; + }; + + FixedText FT_ERROR + { + Pos = MAP_APPFONT ( 7, WINDOW_SIZE_Y - 7 - 48 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 48 ) ; + WordBreak = TRUE; + Hide = TRUE; + + Text = "Die Verbindung zur Datenquelle konnte nicht hergestellt werden.\n" + "Bitte berprfen Sie, bevor Sie fortfahren, die gemachten Einstellungen, oder whlen Sie (auf der vorhergehenden " + "Seite) einen anderen Typ fr Ihre Adress-Datenquelle."; + Text [ english ] = "The connection to the data source could not be established.\n" + "Before you proceed, please check the settings made, or (on the previous page) choose another type of address data source."; + Text [ english_us ] = "The connection to the data source could not be established.\n" + "Before you proceed, please check the settings made, or (on the previous page) choose another type of address data source."; + }; +}; + +//........................................................................ +TabPage RID_PAGE_TABLESELECTION +{ + SVLook = TRUE ; + Size = MAP_APPFONT ( WINDOW_SIZE_X , WINDOW_SIZE_Y ) ; + Text = "Tabellen-Auswahl"; + Text [ english ] = "Table selection"; + Text [ english_us ] = "Table selection"; + + FixedLine FL_SEPARATOR + { + Pos = MAP_APPFONT ( 4, 3 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + }; + + FixedText FL_TOOMUCHTABLES + { + Pos = MAP_APPFONT ( 7, 12 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 24 ) ; + WordBreak = TRUE; + + Text = "Die von Ihnen gewhlte externe Datenquelle enthlt mehrere Adress-Bestnde (respektive Tabellen).\n" + "Bitte whlen Sie denjenigen aus, mit dem Sie hauptschlich arbeiten wollen:"; + Text [ english ] = "The external data source chosen by you contains more than one address stock (or tables, respectively).\n" + "Please choose the one you primarily want to work with:"; + Text [ english_us ] = "The external data source chosen by you contains more than one address stock (or tables, respectively).\n" + "Please choose the one you primarily want to work with:"; + }; + + ListBox LB_TABLELIST + { + Pos = MAP_APPFONT ( 7, 39 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 50 ) ; + SVLook = TRUE; + Sort = TRUE; + DropDown = FALSE; + AutoHScroll = TRUE; + Border = TRUE; + }; +}; + +//........................................................................ +TabPage RID_PAGE_FIELDMAPPING +{ + SVLook = TRUE ; + Size = MAP_APPFONT ( WINDOW_SIZE_X , WINDOW_SIZE_Y ) ; + Text = "Feld-Zuordnung"; + Text [ english ] = "Field assigment"; + Text [ english_us ] = "Field assigment"; + + FixedLine FL_SEPARATOR + { + Pos = MAP_APPFONT ( 4, 3 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + }; + + FixedText FT_FIELDASSIGMENTEXPL + { + Pos = MAP_APPFONT ( 7, 12 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 72 ) ; + WordBreak = TRUE; + + Text = "Um die Adress-Daten in Ihren Vorlagen-Dokumenten benutzen zu knnen, mu %PRODUCTNAME wissen, welche Felder welche " + "konkreten Daten enthalten.\n\n" + "Zum Beispiel knnten Sie die E-Mail-Adressen in einem Feld namens \"EMail\" oder \"E-Mail\" oder \"EM\" - oder unter vllig anderem Namen - gespeichert haben.\n\n" + "Sobald sie den unten stehenden Button drcken, wird ein weiterer Dialog geffnet, in dem sie diese Einstellungen " + "fr Ihre Datenquelle vornehmen knnen."; + Text [ english ] = "To incorporate the address data in your template documents, %PRODUCTNAME has to know which fields " + "do contain which concrete data.\n\n" + "For instance, you could have stored the e-mail addresses in a field named \"EMail\", or \"E-Mail\" or \"EM\" - or something completely different.\n\n" + "When you press the button below, another dialog will be opened, where you can do this field assignment for your " + "data source."; + Text [ english_us ] = "To incorporate the address data in your template documents, %PRODUCTNAME has to know which fields " + "do contain which concrete data.\n\n" + "For instance, you could have stored the e-mail addresses in a field named \"EMail\", or \"E-Mail\" or \"EM\" - or something completely different.\n\n" + "When you press the button below, another dialog will be opened, where you can do this field assignment for your " + "data source."; + }; + + PushButton PB_INVOKE_FIELDS_DIALOG + { + Pos = MAP_APPFONT ( ( WINDOW_SIZE_X - BUTTON_SIZE_X ) / 2, 87 ) ; + Size = MAP_APPFONT ( BUTTON_SIZE_X, BUTTON_SIZE_Y ) ; + + Text = "Feld-Zuordnung"; + Text [ english ] = "Field assignment"; + Text [ english_us ] = "Field assignment"; + }; + + FixedText FT_ASSIGNEDFIELDS + { + Pos = MAP_APPFONT ( 7, WINDOW_SIZE_Y - 7 - 32 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 32 ) ; + }; +}; + +//........................................................................ +TabPage RID_PAGE_FINAL +{ + SVLook = TRUE ; + Size = MAP_APPFONT ( WINDOW_SIZE_X , WINDOW_SIZE_Y ) ; + Text = "Zusammenfassung"; + Text [ english ] = "Summary"; + Text [ english_us ] = "Summary"; + + FixedLine FL_SEPARATOR + { + Pos = MAP_APPFONT ( 4, 3 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 8, 8 ) ; + }; + + FixedText FT_FINISH_EXPL + { + Pos = MAP_APPFONT ( 7, 12 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 32 ) ; + WordBreak = TRUE; + + Text = "Das waren alle Angaben, die zu Integration Ihrer Adress-Daten in %PRODUCTNAME bentigt werden.\n\n" + "Geben Sie jetzt noch den Namen an, unter dem die Datenquelle in %PRODUCTNAME registriert werden soll."; + Text [ english ] = "This were all information necessary to integrate your address data into %PRODUCTNAME.\n\n" + "Now, just enter the name which should be used to register the data source in %PRODUCTNAME."; + Text [ english_us ] = "This were all information necessary to integrate your address data into %PRODUCTNAME.\n\n" + "Now, just enter the name which should be used to register the data source in %PRODUCTNAME."; + }; + + FixedText FT_NAME_EXPL + { + Pos = MAP_APPFONT ( 7, 48 ) ; + Size = MAP_APPFONT ( 50, 8 ) ; + + Text = "Name"; + Text [ english ] = "Name"; + Text [ english_us ] = "Name"; + Group = TRUE; + }; + + Edit ET_DATASOURCENAME + { + Pos = MAP_APPFONT ( 60, 48 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 60 - 7, 12) ; + SVLook = TRUE; + Border = TRUE; + Group = FALSE; + }; + + FixedText FT_DUPLICATENAME + { + Pos = MAP_APPFONT ( 7, WINDOW_SIZE_Y - 7 - 24 ) ; + Size = MAP_APPFONT ( WINDOW_SIZE_X - 14, 24) ; + WordBreak = TRUE; + + Text = "Es existiert schon eine andere Datenquelle mit diesem Namen. Da Datenquellennamen global eindeutig sind, " + "mssen sie einen anderen whlen."; + Text [ english ] = "Another data source already has this name. As data sources have globally unique names, you have to choose another one."; + Text [ english_us ] = "Another data source already has this name. As data sources have globally unique names, you have to choose another one."; + Text [ portuguese ] = "J existe uma fonte de dados com este nome. Os nomes das fontes de dados devem ser nicos, por esta razo recomendvel seleccionar outro nome."; + Text [ russian ] = " . , ."; + Text [ greek ] = " . . "; + Text [ dutch ] = "Er bestaat reeds een andere gegevensbron met deze naam. Kies een andere naam."; + Text [ french ] = "Ce nom a dj t attribu une autre source de donnes. tant donn que les sources de donnes doivent avoir des noms globalement uniques, vous devez en choisir un autre."; + Text [ spanish ] = "Ya existe otra fuente de datos con este nombre. Debe elegir otro ya que el nombre de la fuente de datos debe ser globalmente nico."; + Text [ italian ] = "Esiste gi una sorgente dati con questo nome. Poich il nome delle sorgenti di dati dev'essere univoco, necesario scegliere un altro nome."; + Text [ danish ] = "There already is another data source with this name. Since data source names have to be globally unique, you have to choose another one."; + Text [ swedish ] = "Det finns redan en dataklla med det hr namnet. Eftersom namn p datakllor mste vara globalt unika br Du vlja ett annat namn."; + Text [ polish ] = "Istnieje inne rdo danych o tej samej nazwie. Poniewa nazwy rode danych musz by globalnie jednoznaczne, naley wybra inn nazw."; + Text [ portuguese_brazilian ] = "There already is another data source with this name. Since data source names have to be globally unique, you have to choose another one."; + Text [ japanese ] = "̖O̕tʂްłɂ܂Bް͂Ƌʂ邽߂ɂ́Aق̖OIKv܂B"; + Text [ korean ] = "̹ ̸ ٸ ҽ ֽϴ. ͼҽ ̸ ؾ ϹǷ, ٸ ̸ ؾ մϴ."; + Text [ chinese_simplified ] = "ѾһͬԴΪԴƱһͨõЧƣһơ"; + Text [ chinese_traditional ] = "wgsb@ӦPWƷC]@ӸƷW٥qΩTAбzĥΥt~@ӦĪW١C"; + Text [ turkish ] = "There already is another data source with this name. Since data source names have to be globally unique, you have to choose another one."; + Text [ arabic ] = " . ɡ ."; + Text[ finnish ] = "Toisella tietolhteell on jo sama nimi. Tietolhteill on oltava yksillliset nimet, valitse toinen nimi."; + Text[ catalan ] = "Ya existe otra fuente de datos con este nombre. Debe elegir otro ya que el nombre de la fuente de datos debe ser globalmente nico."; + }; +}; + +//........................................................................ +ErrorBox RID_ERR_NEEDTYPESELECTION +{ + Buttons = WB_OK; + + Message = "Bitte whlen sie einen Adressbuch-Typ aus!"; + Message [ english ] = "Bitte whlen sie einen Adressbuch-Typ aus!"; + Message [ english_us ] = "Bitte whlen sie einen Adressbuch-Typ aus!"; +}; + +QueryBox RID_QRY_NOTABLES +{ + Buttons = WB_YES_NO; + DefButton = WB_DEF_NO; + + Message = "Die Datenquelle enthlt keinerlei Tabellen.\n" + "Wollen Sie sie trotzdem als Adress-Datenquelle einrichten?"; + Message [ english ] = "The data source does not contain any tables.\n" + "Do you want to install it as address data source, anyway?"; + Message [ english_us ] = "The data source does not contain any tables.\n" + "Do you want to install it as address data source, anyway?"; +}; + +//........................................................................ +String RID_STR_DEFAULT_NAME +{ + Text = "Adressen"; + Text [ english ] = "Addresses"; + Text [ english_us ] = "Addresses"; +}; + +String RID_STR_ADMINDIALOGTITLE +{ + Text = "Adress Datenquelle anlegen"; + Text [ english ] = "Create Address Data Source"; + Text [ english_us ] = "Create Address Data Source"; +}; + +String RID_STR_NOCONNECTION +{ + Text = "Die Verbindung konnte nicht hergestellt werden."; + Text [ english ] = "The connection could not be established."; + Text [ english_us ] = "The connection could not be established."; +}; + +String RID_STR_PLEASECHECKSETTINGS +{ + Text = "Bitte berprfen Sie die Einstellungen fr die Datenquelle."; + Text [ english ] = "Please check the settings made for the data source."; + Text [ english_us ] = "Please check the settings made for the data source."; +}; + +String RID_STR_FIELDDIALOGTITLE +{ + Text = "Adress Daten - Feldzuordnung"; + Text [ english ] = "Address data - field assignment"; + Text [ english_us ] = "Address data - field assignment"; +}; + +String RID_STR_NOFIELDSASSIGNED +{ + Text = "Im Augenblick sind keine Felder zugeordnet.\n" + "Wenn Sie im Augenblick keine Zuordnung treffen wollen, knnen Sie dies spter jederzeit nachholen:\n" + "Men \"Datei - Dokumentvorlage - Adressbuch Quelle ...\""; + Text [ english ] = "Currently, there are no fields assigned.\n" + "If you don't want to do this assignment at the moment, you can make this up at any time later on:\n" + "Menu \"File - Template - Address Book Source ...\""; + Text [ english_us ] = "Currently, there are no fields assigned.\n" + "If you don't want to do this assignment at the moment, you can make this up at any time later on:\n" + "Menu \"File - Template - Address Book Source ...\""; + Text [ language_user1 ] = "The last line of this text refers to a menu entry. Please use the same " + "translation as for this menu. Does it help if I tell you that it's in svx/inc/globalmn.hrc:ITEM_FILE_DOCTEMPLATE?"; +}; + +/************************************************************************* + * history: + * $Log: not supported by cvs2svn $ + * + * Revision 1.0 26.07.01 09:03:45 fs + ************************************************************************/ + |