2010-10-14 08:30:41 +02:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2011-03-31 10:05:04 +02:00
|
|
|
/*
|
|
|
|
* 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 .
|
|
|
|
*/
|
2004-09-20 12:18:32 +00:00
|
|
|
#ifndef _MAILMERGEOUTPUTPAGE_HXX
|
|
|
|
#define _MAILMERGEOUTPUTPAGE_HXX
|
|
|
|
#include <svtools/wizardmachine.hxx>
|
|
|
|
#include <vcl/button.hxx>
|
|
|
|
#include <svtools/stdctrl.hxx>
|
|
|
|
#include <vcl/combobox.hxx>
|
|
|
|
#include <vcl/field.hxx>
|
|
|
|
#include <vcl/lstbox.hxx>
|
2012-11-12 14:48:31 +00:00
|
|
|
#include <vcl/prgsbar.hxx>
|
2004-09-20 12:18:32 +00:00
|
|
|
#include <sfx2/objsh.hxx>
|
|
|
|
#include <sfx2/basedlgs.hxx>
|
|
|
|
#include <svtools/svtabbx.hxx>
|
|
|
|
#include <svtools/headbar.hxx>
|
2004-10-22 09:58:10 +00:00
|
|
|
#include "swdllapi.h"
|
|
|
|
#include "mailmergehelper.hxx"
|
2004-09-20 12:18:32 +00:00
|
|
|
|
|
|
|
class SwMailMergeWizard;
|
|
|
|
class SfxPrinter;
|
2005-03-01 14:27:15 +00:00
|
|
|
class SwSendMailDialog;
|
2004-09-20 12:18:32 +00:00
|
|
|
|
|
|
|
namespace com{ namespace sun{ namespace star{
|
|
|
|
namespace mail{
|
|
|
|
class XMailMessage;
|
|
|
|
}
|
|
|
|
}}}
|
|
|
|
|
|
|
|
class SwMailMergeOutputPage : public svt::OWizardPage
|
|
|
|
{
|
|
|
|
SwBoldFixedInfo m_aHeaderFI;
|
|
|
|
FixedInfo m_aOptionsFI;
|
|
|
|
RadioButton m_aSaveStartDocRB;
|
|
|
|
RadioButton m_aSaveMergedDocRB;
|
|
|
|
RadioButton m_aPrintRB;
|
|
|
|
RadioButton m_aSendMailRB;
|
|
|
|
|
|
|
|
FixedLine m_aSeparatorFL;
|
|
|
|
|
|
|
|
PushButton m_aSaveStartDocPB;
|
|
|
|
|
|
|
|
RadioButton m_aSaveAsOneRB;
|
|
|
|
RadioButton m_aSaveIndividualRB;
|
|
|
|
RadioButton m_aPrintAllRB; //has to be here for tab control reasons
|
|
|
|
RadioButton m_aSendAllRB; //has to be here for tab control reasons
|
|
|
|
//this group is used in save and print
|
|
|
|
RadioButton m_aFromRB;
|
|
|
|
NumericField m_aFromNF;
|
|
|
|
FixedText m_aToFT;
|
|
|
|
NumericField m_aToNF;
|
|
|
|
PushButton m_aSaveNowPB;
|
|
|
|
|
|
|
|
FixedText m_aPrinterFT;
|
|
|
|
ListBox m_aPrinterLB;
|
|
|
|
PushButton m_aPrinterSettingsPB;
|
|
|
|
PushButton m_aPrintNowPB;
|
|
|
|
|
|
|
|
FixedText m_aMailToFT;
|
|
|
|
ListBox m_aMailToLB;
|
|
|
|
PushButton m_aCopyToPB;
|
|
|
|
FixedText m_aSubjectFT;
|
|
|
|
Edit m_aSubjectED;
|
|
|
|
FixedText m_aSendAsFT;
|
|
|
|
ListBox m_aSendAsLB;
|
|
|
|
FixedText m_aAttachmentFT;
|
|
|
|
Edit m_aAttachmentED;
|
|
|
|
PushButton m_aSendAsPB;
|
|
|
|
PushButton m_aSendDocumentsPB;
|
|
|
|
|
|
|
|
//some FixedLine labels
|
|
|
|
String m_sSaveStartST;
|
|
|
|
String m_sSaveMergedST;
|
|
|
|
String m_sPrintST;
|
|
|
|
String m_sSendMailST;
|
|
|
|
|
|
|
|
//misc strings
|
|
|
|
String m_sDefaultAttachmentST;
|
|
|
|
String m_sNoSubjectQueryST;
|
|
|
|
String m_sNoSubjectST;
|
|
|
|
String m_sNoAttachmentNameST;
|
|
|
|
String m_sConfigureMail;
|
|
|
|
|
|
|
|
String m_sBody;
|
|
|
|
|
|
|
|
long m_nFromToRBPos;
|
|
|
|
long m_nFromToFTPos;
|
|
|
|
long m_nFromToNFPos;
|
|
|
|
long m_nRBOffset;
|
2008-11-21 14:18:15 +00:00
|
|
|
|
2008-10-01 06:46:01 +00:00
|
|
|
bool m_bCancelSaving;
|
|
|
|
|
2007-09-27 10:34:58 +00:00
|
|
|
SwMailMergeWizard* m_pWizard;
|
|
|
|
|
2004-09-20 12:18:32 +00:00
|
|
|
//some dialog data
|
|
|
|
Printer* m_pTempPrinter;
|
|
|
|
String m_sCC;
|
|
|
|
String m_sBCC;
|
|
|
|
|
|
|
|
|
|
|
|
DECL_LINK(OutputTypeHdl_Impl, RadioButton*);
|
|
|
|
DECL_LINK(CopyToHdl_Impl, PushButton*);
|
|
|
|
DECL_LINK(SaveStartHdl_Impl, PushButton* );
|
|
|
|
DECL_LINK(SaveOutputHdl_Impl, PushButton* );
|
|
|
|
DECL_LINK(PrinterChangeHdl_Impl, ListBox* );
|
2012-03-01 18:00:32 +01:00
|
|
|
DECL_LINK(PrintHdl_Impl, void *);
|
2004-09-20 12:18:32 +00:00
|
|
|
DECL_LINK(PrinterSetupHdl_Impl, PushButton* );
|
|
|
|
DECL_LINK(SendTypeHdl_Impl, ListBox*);
|
|
|
|
DECL_LINK(SendAsHdl_Impl, PushButton*);
|
|
|
|
DECL_LINK(SendDocumentsHdl_Impl, PushButton*);
|
2005-10-19 07:26:43 +00:00
|
|
|
DECL_LINK(DocumentSelectionHdl_Impl, RadioButton*);
|
2012-03-01 18:00:32 +01:00
|
|
|
DECL_LINK(SaveCancelHdl_Impl, void *);
|
2004-09-20 12:18:32 +00:00
|
|
|
protected:
|
2008-03-06 18:06:56 +00:00
|
|
|
virtual bool canAdvance() const;
|
|
|
|
virtual void ActivatePage();
|
2004-09-20 12:18:32 +00:00
|
|
|
public:
|
|
|
|
SwMailMergeOutputPage( SwMailMergeWizard* _pParent);
|
|
|
|
~SwMailMergeOutputPage();
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
struct SwMailDescriptor
|
|
|
|
{
|
|
|
|
::rtl::OUString sEMail;
|
|
|
|
::rtl::OUString sAttachmentURL;
|
|
|
|
::rtl::OUString sAttachmentName;
|
|
|
|
::rtl::OUString sMimeType;
|
|
|
|
::rtl::OUString sSubject;
|
|
|
|
::rtl::OUString sBodyMimeType;
|
|
|
|
::rtl::OUString sBodyContent;
|
|
|
|
|
|
|
|
|
|
|
|
::rtl::OUString sCC;
|
|
|
|
::rtl::OUString sBCC;
|
|
|
|
};
|
|
|
|
struct SwSendMailDialog_Impl;
|
|
|
|
class SwMailMergeConfigItem;
|
2005-03-01 14:27:15 +00:00
|
|
|
class SW_DLLPUBLIC SwSendMailDialog : public ModelessDialog //SfxModalDialog
|
2004-09-20 12:18:32 +00:00
|
|
|
{
|
|
|
|
FixedLine m_aStatusFL;
|
|
|
|
FixedText m_aStatusFT;
|
|
|
|
|
|
|
|
FixedLine m_aTransferStatusFL;
|
|
|
|
FixedText m_aTransferStatusFT;
|
|
|
|
FixedInfo m_PausedFI;
|
|
|
|
ProgressBar m_aProgressBar;
|
|
|
|
FixedText m_aErrorStatusFT;
|
|
|
|
|
|
|
|
PushButton m_aDetailsPB;
|
|
|
|
HeaderBar m_aStatusHB;
|
|
|
|
SvTabListBox m_aStatusLB;
|
|
|
|
|
|
|
|
FixedLine m_aSeparatorFL;
|
|
|
|
|
|
|
|
PushButton m_aStopPB;
|
|
|
|
PushButton m_aClosePB;
|
|
|
|
|
|
|
|
String m_sMore;
|
|
|
|
String m_sLess;
|
|
|
|
String m_sContinue;
|
|
|
|
String m_sStop;
|
|
|
|
String m_sSend;
|
|
|
|
String m_sTransferStatus;
|
|
|
|
String m_sErrorStatus;
|
|
|
|
String m_sSendingTo;
|
|
|
|
String m_sCompleted;
|
|
|
|
String m_sFailed;
|
|
|
|
String m_sTerminateQuery;
|
|
|
|
|
|
|
|
bool m_bCancel;
|
2005-03-01 14:27:15 +00:00
|
|
|
bool m_bDesctructionEnabled;
|
2004-09-20 12:18:32 +00:00
|
|
|
|
|
|
|
ImageList m_aImageList;
|
|
|
|
|
|
|
|
SwSendMailDialog_Impl* m_pImpl;
|
|
|
|
SwMailMergeConfigItem* m_pConfigItem;
|
|
|
|
sal_Int32 m_nStatusHeight;
|
|
|
|
sal_Int32 m_nSendCount;
|
|
|
|
sal_Int32 m_nErrorCount;
|
|
|
|
|
2012-03-01 18:00:32 +01:00
|
|
|
SW_DLLPRIVATE DECL_LINK( DetailsHdl_Impl, void* );
|
2004-10-22 09:58:10 +00:00
|
|
|
SW_DLLPRIVATE DECL_LINK( StopHdl_Impl, PushButton* );
|
2012-03-01 18:00:32 +01:00
|
|
|
SW_DLLPRIVATE DECL_LINK( CloseHdl_Impl, void* );
|
2004-10-22 09:58:10 +00:00
|
|
|
SW_DLLPRIVATE DECL_STATIC_LINK( SwSendMailDialog, StartSendMails, SwSendMailDialog* );
|
|
|
|
SW_DLLPRIVATE DECL_STATIC_LINK( SwSendMailDialog, StopSendMails, SwSendMailDialog* );
|
2005-03-01 14:27:15 +00:00
|
|
|
SW_DLLPRIVATE DECL_STATIC_LINK( SwSendMailDialog, RemoveThis, Timer* );
|
2004-09-20 12:18:32 +00:00
|
|
|
|
2005-03-01 14:27:15 +00:00
|
|
|
SW_DLLPRIVATE void IterateMails();
|
2004-10-22 09:58:10 +00:00
|
|
|
SW_DLLPRIVATE void SendMails();
|
|
|
|
SW_DLLPRIVATE void UpdateTransferStatus();
|
2005-03-01 14:27:15 +00:00
|
|
|
|
|
|
|
virtual void StateChanged( StateChangedType nStateChange );
|
|
|
|
|
2004-09-20 12:18:32 +00:00
|
|
|
public:
|
|
|
|
SwSendMailDialog( Window* pParent, SwMailMergeConfigItem& );
|
|
|
|
~SwSendMailDialog();
|
|
|
|
|
|
|
|
void AddDocument( SwMailDescriptor& rDesc );
|
2005-03-01 14:27:15 +00:00
|
|
|
void SetDocumentCount( sal_Int32 nAllDocuments );
|
|
|
|
void EnableDesctruction() {m_bDesctructionEnabled = true;}
|
2007-09-27 10:34:58 +00:00
|
|
|
void ShowDialog();
|
2004-09-20 12:18:32 +00:00
|
|
|
|
|
|
|
void DocumentSent( ::com::sun::star::uno::Reference< ::com::sun::star::mail::XMailMessage>,
|
|
|
|
bool bResult,
|
|
|
|
const ::rtl::OUString* pError );
|
|
|
|
void AllMailsSent();
|
|
|
|
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2010-10-14 08:30:41 +02:00
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|