00001 /* AbiWord 00002 * Copyright (C) 2003 Dom Lachowicz 00003 * 00004 * This program is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU General Public License 00006 * as published by the Free Software Foundation; either version 2 00007 * of the License, or (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with this program; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00017 * 02110-1301 USA. 00018 */ 00019 00020 #ifndef AP_DIALOG_MAILMERGE_H 00021 #define AP_DIALOG_MAILMERGE_H 00022 00023 #include "xap_Dialog.h" 00024 #include "pd_Document.h" 00025 #include "xap_Strings.h" 00026 #include "ut_vector.h" 00027 00028 class XAP_Frame; 00029 00030 class ABI_EXPORT AP_Dialog_MailMerge : public XAP_Dialog_Modeless 00031 { 00032 public: 00033 AP_Dialog_MailMerge(XAP_DialogFactory * pDlgFactory, 00034 XAP_Dialog_Id id); 00035 virtual ~AP_Dialog_MailMerge(void); 00036 00037 const UT_UTF8String& getMergeField() const; 00038 00039 void eventOpen (); 00040 00041 virtual void setActiveFrame(XAP_Frame *pFrame) { m_pFrame = pFrame; } 00042 00043 virtual void destroy(void) {} 00044 virtual void activate(void) {} 00045 00046 protected: 00047 00048 void init (); 00049 00050 void setMergeField(const UT_UTF8String & name); 00051 00052 virtual void setFieldList(); 00053 00054 void addClicked(); 00055 00056 XAP_Frame * m_pFrame; 00057 std::vector<std::string> m_vecFields; 00058 00059 private: 00060 UT_UTF8String m_mergeField; 00061 }; 00062 00063 #endif /* AP_DIALOG_MARKREVISIONS_H */