1*1d2dbeb0SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*1d2dbeb0SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*1d2dbeb0SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*1d2dbeb0SAndrew Rist * distributed with this work for additional information 6*1d2dbeb0SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*1d2dbeb0SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*1d2dbeb0SAndrew Rist * "License"); you may not use this file except in compliance 9*1d2dbeb0SAndrew Rist * with the License. You may obtain a copy of the License at 10*1d2dbeb0SAndrew Rist * 11*1d2dbeb0SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*1d2dbeb0SAndrew Rist * 13*1d2dbeb0SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*1d2dbeb0SAndrew Rist * software distributed under the License is distributed on an 15*1d2dbeb0SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*1d2dbeb0SAndrew Rist * KIND, either express or implied. See the License for the 17*1d2dbeb0SAndrew Rist * specific language governing permissions and limitations 18*1d2dbeb0SAndrew Rist * under the License. 19*1d2dbeb0SAndrew Rist * 20*1d2dbeb0SAndrew Rist *************************************************************/ 21*1d2dbeb0SAndrew Rist 22*1d2dbeb0SAndrew Rist 23cdf0e10cSrcweir #ifndef _OUTLINE_HXX 24cdf0e10cSrcweir #define _OUTLINE_HXX 25cdf0e10cSrcweir 26cdf0e10cSrcweir #include <sfx2/tabdlg.hxx> 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29cdf0e10cSrcweir #include <vcl/menu.hxx> 30cdf0e10cSrcweir 31cdf0e10cSrcweir #ifndef _BUTTON_HXX //autogen 32cdf0e10cSrcweir #include <vcl/button.hxx> 33cdf0e10cSrcweir #endif 34cdf0e10cSrcweir #include <svtools/stdctrl.hxx> 35cdf0e10cSrcweir 36cdf0e10cSrcweir #ifndef _FIXED_HXX //autogen 37cdf0e10cSrcweir #include <vcl/fixed.hxx> 38cdf0e10cSrcweir #endif 39cdf0e10cSrcweir 40cdf0e10cSrcweir #ifndef _LSTBOX_HXX //autogen 41cdf0e10cSrcweir #include <vcl/lstbox.hxx> 42cdf0e10cSrcweir #endif 43cdf0e10cSrcweir 44cdf0e10cSrcweir #ifndef _EDIT_HXX //autogen 45cdf0e10cSrcweir #include <vcl/edit.hxx> 46cdf0e10cSrcweir #endif 47cdf0e10cSrcweir 48cdf0e10cSrcweir #ifndef _FIELD_HXX //autogen 49cdf0e10cSrcweir #include <vcl/field.hxx> 50cdf0e10cSrcweir #endif 51cdf0e10cSrcweir 52cdf0e10cSrcweir #include "swtypes.hxx" //fuer MAXLEVEL 53cdf0e10cSrcweir #include <numprevw.hxx> 54cdf0e10cSrcweir #include <numberingtypelistbox.hxx> 55cdf0e10cSrcweir 56cdf0e10cSrcweir class SwWrtShell; 57cdf0e10cSrcweir class SwNumRule; 58cdf0e10cSrcweir class SwChapterNumRules; 59cdf0e10cSrcweir 60cdf0e10cSrcweir /* -----------------07.07.98 13:38------------------- 61cdf0e10cSrcweir * 62cdf0e10cSrcweir * --------------------------------------------------*/ 63cdf0e10cSrcweir class SwOutlineTabDialog : public SfxTabDialog 64cdf0e10cSrcweir { 65cdf0e10cSrcweir static sal_uInt16 nNumLevel; 66cdf0e10cSrcweir 67cdf0e10cSrcweir String aNullStr; 68cdf0e10cSrcweir String aCollNames[MAXLEVEL]; 69cdf0e10cSrcweir PopupMenu aFormMenu; 70cdf0e10cSrcweir 71cdf0e10cSrcweir SwWrtShell& rWrtSh; 72cdf0e10cSrcweir SwNumRule* pNumRule; 73cdf0e10cSrcweir SwChapterNumRules* pChapterNumRules; 74cdf0e10cSrcweir 75cdf0e10cSrcweir sal_Bool bModified : 1; 76cdf0e10cSrcweir 77cdf0e10cSrcweir protected: 78cdf0e10cSrcweir DECL_LINK( CancelHdl, Button * ); 79cdf0e10cSrcweir DECL_LINK( FormHdl, Button * ); 80cdf0e10cSrcweir DECL_LINK( MenuSelectHdl, Menu * ); 81cdf0e10cSrcweir 82cdf0e10cSrcweir virtual void PageCreated(sal_uInt16 nPageId, SfxTabPage& rPage); 83cdf0e10cSrcweir virtual short Ok(); 84cdf0e10cSrcweir 85cdf0e10cSrcweir public: 86cdf0e10cSrcweir SwOutlineTabDialog(Window* pParent, 87cdf0e10cSrcweir const SfxItemSet* pSwItemSet, 88cdf0e10cSrcweir SwWrtShell &); 89cdf0e10cSrcweir ~SwOutlineTabDialog(); 90cdf0e10cSrcweir GetNumRule()91cdf0e10cSrcweir SwNumRule* GetNumRule() {return pNumRule;} 92cdf0e10cSrcweir sal_uInt16 GetLevel(const String &rFmtName) const; GetCollNames()93cdf0e10cSrcweir String* GetCollNames() {return aCollNames;} 94cdf0e10cSrcweir GetActNumLevel()95cdf0e10cSrcweir static sal_uInt16 GetActNumLevel() {return nNumLevel;} SetActNumLevel(sal_uInt16 nSet)96cdf0e10cSrcweir static void SetActNumLevel(sal_uInt16 nSet) {nNumLevel = nSet;} 97cdf0e10cSrcweir }; 98cdf0e10cSrcweir /* -----------------07.07.98 13:47------------------- 99cdf0e10cSrcweir * 100cdf0e10cSrcweir * --------------------------------------------------*/ 101cdf0e10cSrcweir class SwOutlineSettingsTabPage : public SfxTabPage 102cdf0e10cSrcweir { 103cdf0e10cSrcweir FixedLine aLevelFL; 104cdf0e10cSrcweir ListBox aLevelLB; 105cdf0e10cSrcweir 106cdf0e10cSrcweir FixedLine aNumberFL; 107cdf0e10cSrcweir FixedText aCollLbl; 108cdf0e10cSrcweir ListBox aCollBox; 109cdf0e10cSrcweir FixedText aNumberLbl; 110cdf0e10cSrcweir SwNumberingTypeListBox aNumberBox; 111cdf0e10cSrcweir FixedText aCharFmtFT; 112cdf0e10cSrcweir ListBox aCharFmtLB; 113cdf0e10cSrcweir FixedText aAllLevelFT; 114cdf0e10cSrcweir NumericField aAllLevelNF; 115cdf0e10cSrcweir FixedText aDelim; 116cdf0e10cSrcweir FixedText aPrefixFT; 117cdf0e10cSrcweir Edit aPrefixED; 118cdf0e10cSrcweir FixedText aSuffixFT; 119cdf0e10cSrcweir Edit aSuffixED; 120cdf0e10cSrcweir FixedText aStartLbl; 121cdf0e10cSrcweir NumericField aStartEdit; 122cdf0e10cSrcweir NumberingPreview aPreviewWIN; 123cdf0e10cSrcweir 124cdf0e10cSrcweir String aNoFmtName; 125cdf0e10cSrcweir String aSaveCollNames[MAXLEVEL]; 126cdf0e10cSrcweir SwWrtShell* pSh; 127cdf0e10cSrcweir SwNumRule* pNumRule; 128cdf0e10cSrcweir String* pCollNames; 129cdf0e10cSrcweir sal_uInt16 nActLevel; 130cdf0e10cSrcweir 131cdf0e10cSrcweir DECL_LINK( LevelHdl, ListBox * ); 132cdf0e10cSrcweir DECL_LINK( ToggleComplete, NumericField * ); 133cdf0e10cSrcweir DECL_LINK( CollSelect, ListBox * ); 134cdf0e10cSrcweir DECL_LINK( CollSelectGetFocus, ListBox * ); 135cdf0e10cSrcweir DECL_LINK( NumberSelect, SwNumberingTypeListBox * ); 136cdf0e10cSrcweir DECL_LINK( DelimModify, Edit * ); 137cdf0e10cSrcweir DECL_LINK( StartModified, NumericField * ); 138cdf0e10cSrcweir DECL_LINK( CharFmtHdl, ListBox * ); 139cdf0e10cSrcweir 140cdf0e10cSrcweir void Update(); 141cdf0e10cSrcweir SetModified()142cdf0e10cSrcweir void SetModified(){aPreviewWIN.Invalidate();} 143cdf0e10cSrcweir void CheckForStartValue_Impl(sal_uInt16 nNumberingType); 144cdf0e10cSrcweir 145cdf0e10cSrcweir using SfxTabPage::ActivatePage; 146cdf0e10cSrcweir using SfxTabPage::DeactivatePage; 147cdf0e10cSrcweir 148cdf0e10cSrcweir public: 149cdf0e10cSrcweir SwOutlineSettingsTabPage(Window* pParent, const SfxItemSet& rSet); 150cdf0e10cSrcweir ~SwOutlineSettingsTabPage(); 151cdf0e10cSrcweir 152cdf0e10cSrcweir void SetWrtShell(SwWrtShell* pShell); 153cdf0e10cSrcweir 154cdf0e10cSrcweir virtual void ActivatePage(const SfxItemSet& rSet); 155cdf0e10cSrcweir virtual int DeactivatePage(SfxItemSet *pSet); 156cdf0e10cSrcweir 157cdf0e10cSrcweir virtual sal_Bool FillItemSet( SfxItemSet& rSet ); 158cdf0e10cSrcweir virtual void Reset( const SfxItemSet& rSet ); 159cdf0e10cSrcweir static SfxTabPage* Create( Window* pParent, 160cdf0e10cSrcweir const SfxItemSet& rAttrSet); 161cdf0e10cSrcweir }; 162cdf0e10cSrcweir #endif 163