2004-09-20 12:22:48 +00:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2010-02-12 15:01:35 +01:00
|
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* This file is part of OpenOffice.org.
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* 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.
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* 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).
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
2008-04-10 19:16:13 +00:00
|
|
|
* 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.
|
2004-09-20 12:22:48 +00:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
#ifndef _MAILMERGEWIZARD_HXX
|
|
|
|
#define _MAILMERGEWIZARD_HXX
|
|
|
|
|
|
|
|
#include <svtools/roadmapwizard.hxx>
|
|
|
|
|
|
|
|
class SwView;
|
|
|
|
class SwMailMergeConfigItem;
|
|
|
|
|
|
|
|
#define MM_DOCUMENTSELECTPAGE 0
|
|
|
|
#define MM_OUTPUTTYPETPAGE 1
|
|
|
|
#define MM_ADDRESSBLOCKPAGE 2
|
|
|
|
#define MM_GREETINGSPAGE 3
|
|
|
|
#define MM_LAYOUTPAGE 4
|
|
|
|
#define MM_PREPAREMERGEPAGE 5
|
|
|
|
#define MM_MERGEPAGE 6
|
|
|
|
#define MM_OUTPUTPAGE 7
|
|
|
|
|
|
|
|
class SwMailMergeWizard : public ::svt::RoadmapWizard
|
|
|
|
{
|
|
|
|
SwView* m_pSwView;
|
|
|
|
String sDocumentURL;
|
2009-01-20 14:04:00 +00:00
|
|
|
bool m_bDocumentLoad;
|
|
|
|
|
2004-09-20 12:22:48 +00:00
|
|
|
SwMailMergeConfigItem& m_rConfigItem;
|
|
|
|
|
|
|
|
String m_sStarting;
|
|
|
|
String m_sDocumentType;
|
|
|
|
String m_sAddressBlock;
|
|
|
|
String m_sAddressList;
|
|
|
|
String m_sGreetingsLine;
|
|
|
|
String m_sLayout;
|
|
|
|
String m_sPrepareMerge;
|
|
|
|
String m_sMerge;
|
|
|
|
String m_sOutput;
|
|
|
|
String m_sFinish;
|
|
|
|
|
|
|
|
sal_uInt16 m_nRestartPage;
|
|
|
|
|
2007-10-22 14:20:11 +00:00
|
|
|
using svt::OWizardMachine::skipUntil;
|
|
|
|
|
2004-09-20 12:22:48 +00:00
|
|
|
protected:
|
|
|
|
virtual svt::OWizardPage* createPage(WizardState _nState);
|
|
|
|
virtual void enterState( WizardState _nState );
|
|
|
|
|
|
|
|
// roadmap feature ??
|
|
|
|
// virtual sal_Bool prepareLeaveCurrentState( CommitPageReason _eReason );
|
2008-03-06 18:07:48 +00:00
|
|
|
virtual String getStateDisplayName( WizardState _nState ) const;
|
2004-09-20 12:22:48 +00:00
|
|
|
|
|
|
|
public:
|
|
|
|
SwMailMergeWizard(SwView& rView, SwMailMergeConfigItem& rConfigItem);
|
|
|
|
~SwMailMergeWizard();
|
|
|
|
|
|
|
|
SwView* GetSwView() {return m_pSwView;}
|
|
|
|
SwMailMergeConfigItem& GetConfigItem() { return m_rConfigItem;}
|
|
|
|
|
|
|
|
void SetReloadDocument(const String& rURL){sDocumentURL = rURL;}
|
|
|
|
const String& GetReloadDocument() const {return sDocumentURL;}
|
|
|
|
|
2009-01-20 14:04:00 +00:00
|
|
|
//next step requires loading of document
|
|
|
|
void SetDocumentLoad(bool bSet) {m_bDocumentLoad = bSet;}
|
|
|
|
|
2004-09-20 12:22:48 +00:00
|
|
|
void UpdateRoadmap();
|
|
|
|
void CreateTargetDocument();
|
|
|
|
|
|
|
|
sal_uInt16 GetRestartPage() const {return m_nRestartPage;}
|
|
|
|
void SetRestartPage(sal_uInt16 nPage) { m_nRestartPage = nPage;}
|
|
|
|
|
|
|
|
sal_Bool skipUntil( sal_uInt16 nPage)
|
|
|
|
{return ::svt::RoadmapWizard::skipUntil(WizardState(nPage));}
|
|
|
|
|
|
|
|
void updateRoadmapItemLabel( WizardState _nState );
|
2006-11-22 09:26:47 +00:00
|
|
|
|
|
|
|
virtual short Execute();
|
|
|
|
virtual void StartExecuteModal( const Link& rEndDialogHdl );
|
2004-09-20 12:22:48 +00:00
|
|
|
};
|
|
|
|
#endif
|
|
|
|
|