1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 #ifndef _ENVLOP_HXX 28 #define _ENVLOP_HXX 29 30 #ifndef _SV_MEDIT_HXX 31 #include <svtools/svmedit.hxx> 32 #endif 33 #include <sfx2/tabdlg.hxx> 34 35 #ifndef _FIXED_HXX //autogen 36 #include <vcl/fixed.hxx> 37 #endif 38 39 #ifndef _EDIT_HXX //autogen 40 #include <vcl/edit.hxx> 41 #endif 42 43 #ifndef _LSTBOX_HXX //autogen 44 #include <vcl/lstbox.hxx> 45 #endif 46 47 #ifndef _IMAGEBTN_HXX //autogen 48 #include <vcl/button.hxx> 49 #endif 50 51 #include "envimg.hxx" 52 53 #define GetFldVal(rField) (rField).Denormalize((rField).GetValue(FUNIT_TWIP)) 54 #define SetFldVal(rField, lValue) (rField).SetValue((rField).Normalize(lValue), FUNIT_TWIP) 55 56 class SwEnvPage; 57 class SwEnvFmtPage; 58 class SwWrtShell; 59 class Printer; 60 61 // class SwEnvPreview --------------------------------------------------------- 62 63 class SwEnvPreview : public Window 64 { 65 void Paint(const Rectangle&); 66 67 public: 68 69 SwEnvPreview(SfxTabPage* pParent, const ResId& rResID); 70 ~SwEnvPreview(); 71 72 protected: 73 virtual void DataChanged( const DataChangedEvent& rDCEvt ); 74 }; 75 76 // class SwEnvDlg ----------------------------------------------------------- 77 78 class SwEnvDlg : public SfxTabDialog 79 { 80 friend class SwEnvPage; 81 friend class SwEnvFmtPage; 82 friend class SwEnvPrtPage; 83 friend class SwEnvPreview; 84 85 String sInsert; 86 String sChange; 87 SwEnvItem aEnvItem; 88 SwWrtShell *pSh; 89 Printer *pPrinter; 90 SfxItemSet *pAddresseeSet; 91 SfxItemSet *pSenderSet; 92 93 virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage ); 94 virtual short Ok(); 95 96 public: 97 SwEnvDlg(Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, sal_Bool bInsert); 98 ~SwEnvDlg(); 99 }; 100 101 // class SwEnvPage ---------------------------------------------------------- 102 103 class SwEnvPage : public SfxTabPage 104 { 105 FixedText aAddrText; 106 MultiLineEdit aAddrEdit; 107 FixedText aDatabaseFT; 108 ListBox aDatabaseLB; 109 FixedText aTableFT; 110 ListBox aTableLB; 111 ImageButton aInsertBT; 112 FixedText aDBFieldFT; 113 ListBox aDBFieldLB; 114 CheckBox aSenderBox; 115 MultiLineEdit aSenderEdit; 116 SwEnvPreview aPreview; 117 118 SwWrtShell* pSh; 119 String sActDBName; 120 121 SwEnvPage(Window* pParent, const SfxItemSet& rSet); 122 ~SwEnvPage(); 123 124 DECL_LINK( DatabaseHdl, ListBox * ); 125 DECL_LINK( FieldHdl, Button * ); 126 DECL_LINK( SenderHdl, Button * ); 127 128 void InitDatabaseBox(); 129 130 using Window::GetParent; 131 SwEnvDlg* GetParent() {return (SwEnvDlg*) SfxTabPage::GetParent()->GetParent();} 132 133 using SfxTabPage::ActivatePage; 134 using SfxTabPage::DeactivatePage; 135 136 public: 137 138 static SfxTabPage* Create(Window* pParent, const SfxItemSet& rSet); 139 140 virtual void ActivatePage(const SfxItemSet& rSet); 141 virtual int DeactivatePage(SfxItemSet* pSet = 0); 142 void FillItem(SwEnvItem& rItem); 143 virtual sal_Bool FillItemSet(SfxItemSet& rSet); 144 virtual void Reset(const SfxItemSet& rSet); 145 }; 146 147 #endif 148 149 150