1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski #ifndef _SVX_OPTLINGU_HXX 24*b1cdbd2cSJim Jagielski #define _SVX_OPTLINGU_HXX 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski // include --------------------------------------------------------------- 27*b1cdbd2cSJim Jagielski 28*b1cdbd2cSJim Jagielski #include <vcl/group.hxx> 29*b1cdbd2cSJim Jagielski #include <vcl/fixed.hxx> 30*b1cdbd2cSJim Jagielski #include <vcl/toolbox.hxx> 31*b1cdbd2cSJim Jagielski #include <vcl/field.hxx> 32*b1cdbd2cSJim Jagielski #include <svtools/fixedhyper.hxx> 33*b1cdbd2cSJim Jagielski #include <sfx2/tabdlg.hxx> 34*b1cdbd2cSJim Jagielski #include <svx/checklbx.hxx> 35*b1cdbd2cSJim Jagielski #include <svx/langbox.hxx> 36*b1cdbd2cSJim Jagielski #include <com/sun/star/uno/Reference.hxx> 37*b1cdbd2cSJim Jagielski #include <com/sun/star/uno/Sequence.hxx> 38*b1cdbd2cSJim Jagielski #include <com/sun/star/beans/XPropertySet.hpp> 39*b1cdbd2cSJim Jagielski 40*b1cdbd2cSJim Jagielski namespace com{namespace sun{namespace star{ 41*b1cdbd2cSJim Jagielski namespace beans{ 42*b1cdbd2cSJim Jagielski class XPropertySet; 43*b1cdbd2cSJim Jagielski } 44*b1cdbd2cSJim Jagielski namespace linguistic2{ 45*b1cdbd2cSJim Jagielski class XDictionary; 46*b1cdbd2cSJim Jagielski class XDictionaryList; 47*b1cdbd2cSJim Jagielski class XSpellChecker; 48*b1cdbd2cSJim Jagielski }}}} 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim Jagielski class SvLBoxEntry; 51*b1cdbd2cSJim Jagielski class SvxLinguData_Impl; 52*b1cdbd2cSJim Jagielski 53*b1cdbd2cSJim Jagielski // define ---------------------------------------------------------------- 54*b1cdbd2cSJim Jagielski 55*b1cdbd2cSJim Jagielski #define GROUP_MODULES ((sal_uInt16)0x0008) 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski // forward --------------------------------------------------------------- 58*b1cdbd2cSJim Jagielski 59*b1cdbd2cSJim Jagielski class SvxEditModulesDlg : public ModalDialog 60*b1cdbd2cSJim Jagielski { 61*b1cdbd2cSJim Jagielski FixedLine aModulesFL; 62*b1cdbd2cSJim Jagielski FixedText aLanguageFT; 63*b1cdbd2cSJim Jagielski SvxLanguageBox aLanguageLB; 64*b1cdbd2cSJim Jagielski 65*b1cdbd2cSJim Jagielski SvxCheckListBox aModulesCLB; 66*b1cdbd2cSJim Jagielski PushButton aPrioUpPB; 67*b1cdbd2cSJim Jagielski PushButton aPrioDownPB; 68*b1cdbd2cSJim Jagielski PushButton aBackPB; 69*b1cdbd2cSJim Jagielski svt::FixedHyperlink aMoreDictsLink; 70*b1cdbd2cSJim Jagielski 71*b1cdbd2cSJim Jagielski FixedLine aButtonsFL; 72*b1cdbd2cSJim Jagielski HelpButton aHelpPB; 73*b1cdbd2cSJim Jagielski OKButton aClosePB; 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielski String sSpell; 76*b1cdbd2cSJim Jagielski String sHyph; 77*b1cdbd2cSJim Jagielski String sThes; 78*b1cdbd2cSJim Jagielski String sGrammar; 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski SvxLinguData_Impl* pDefaultLinguData; 81*b1cdbd2cSJim Jagielski SvxLinguData_Impl& rLinguData; 82*b1cdbd2cSJim Jagielski 83*b1cdbd2cSJim Jagielski SvLBoxButtonData* pCheckButtonData; 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol); 86*b1cdbd2cSJim Jagielski 87*b1cdbd2cSJim Jagielski #ifdef _SVX_OPTLINGU_CXX 88*b1cdbd2cSJim Jagielski DECL_LINK( SelectHdl_Impl, SvxCheckListBox * ); 89*b1cdbd2cSJim Jagielski DECL_LINK( UpDownHdl_Impl, PushButton * ); 90*b1cdbd2cSJim Jagielski DECL_LINK( ClickHdl_Impl, PushButton * ); 91*b1cdbd2cSJim Jagielski DECL_LINK( BackHdl_Impl, PushButton * ); 92*b1cdbd2cSJim Jagielski DECL_LINK( SelectHdlLB_Impl, ListBox * ); 93*b1cdbd2cSJim Jagielski DECL_LINK( LangSelectHdl_Impl, ListBox* ); 94*b1cdbd2cSJim Jagielski DECL_LINK( BoxCheckButtonHdl_Impl, SvTreeListBox * ); 95*b1cdbd2cSJim Jagielski DECL_LINK( OpenURLHdl_Impl, svt::FixedHyperlink* ); 96*b1cdbd2cSJim Jagielski #endif 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim Jagielski public: 99*b1cdbd2cSJim Jagielski SvxEditModulesDlg(Window* pParent, SvxLinguData_Impl& rData); 100*b1cdbd2cSJim Jagielski virtual ~SvxEditModulesDlg(); 101*b1cdbd2cSJim Jagielski }; 102*b1cdbd2cSJim Jagielski 103*b1cdbd2cSJim Jagielski // class SvxLinguTabPage ------------------------------------------------- 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim Jagielski class SvxLinguTabPage : public SfxTabPage 106*b1cdbd2cSJim Jagielski { 107*b1cdbd2cSJim Jagielski private: 108*b1cdbd2cSJim Jagielski FixedLine aLinguisticFL; 109*b1cdbd2cSJim Jagielski FixedText aLinguModulesFT; 110*b1cdbd2cSJim Jagielski SvxCheckListBox aLinguModulesCLB; 111*b1cdbd2cSJim Jagielski PushButton aLinguModulesEditPB; 112*b1cdbd2cSJim Jagielski FixedText aLinguDicsFT; 113*b1cdbd2cSJim Jagielski SvxCheckListBox aLinguDicsCLB; 114*b1cdbd2cSJim Jagielski PushButton aLinguDicsNewPB; 115*b1cdbd2cSJim Jagielski PushButton aLinguDicsEditPB; 116*b1cdbd2cSJim Jagielski PushButton aLinguDicsDelPB; 117*b1cdbd2cSJim Jagielski FixedText aLinguOptionsFT; 118*b1cdbd2cSJim Jagielski SvxCheckListBox aLinguOptionsCLB; 119*b1cdbd2cSJim Jagielski PushButton aLinguOptionsEditPB; 120*b1cdbd2cSJim Jagielski svt::FixedHyperlink aMoreDictsLink; 121*b1cdbd2cSJim Jagielski 122*b1cdbd2cSJim Jagielski String sCapitalWords; 123*b1cdbd2cSJim Jagielski String sWordsWithDigits; 124*b1cdbd2cSJim Jagielski String sCapitalization; 125*b1cdbd2cSJim Jagielski String sSpellSpecial; 126*b1cdbd2cSJim Jagielski String sSpellAuto; 127*b1cdbd2cSJim Jagielski String sGrammarAuto; 128*b1cdbd2cSJim Jagielski String sNumMinWordlen; 129*b1cdbd2cSJim Jagielski String sNumPreBreak; 130*b1cdbd2cSJim Jagielski String sNumPostBreak; 131*b1cdbd2cSJim Jagielski String sHyphAuto; 132*b1cdbd2cSJim Jagielski String sHyphSpecial; 133*b1cdbd2cSJim Jagielski 134*b1cdbd2cSJim Jagielski com::sun::star::uno::Reference< 135*b1cdbd2cSJim Jagielski com::sun::star::beans::XPropertySet > xProp; 136*b1cdbd2cSJim Jagielski 137*b1cdbd2cSJim Jagielski com::sun::star::uno::Reference< 138*b1cdbd2cSJim Jagielski com::sun::star::linguistic2::XDictionaryList > xDicList; 139*b1cdbd2cSJim Jagielski com::sun::star::uno::Sequence< 140*b1cdbd2cSJim Jagielski com::sun::star::uno::Reference< 141*b1cdbd2cSJim Jagielski com::sun::star::linguistic2::XDictionary > > aDics; 142*b1cdbd2cSJim Jagielski 143*b1cdbd2cSJim Jagielski SvLBoxButtonData* pCheckButtonData; 144*b1cdbd2cSJim Jagielski 145*b1cdbd2cSJim Jagielski SvxLinguData_Impl* pLinguData; 146*b1cdbd2cSJim Jagielski 147*b1cdbd2cSJim Jagielski SvxLinguTabPage( Window* pParent, const SfxItemSet& rCoreSet ); 148*b1cdbd2cSJim Jagielski SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol); 149*b1cdbd2cSJim Jagielski 150*b1cdbd2cSJim Jagielski void AddDicBoxEntry( const com::sun::star::uno::Reference< com::sun::star::linguistic2::XDictionary > &rxDic, sal_uInt16 nIdx ); 151*b1cdbd2cSJim Jagielski sal_uLong GetDicUserData( const com::sun::star::uno::Reference< com::sun::star::linguistic2::XDictionary > &rxDic, sal_uInt16 nIdx ); 152*b1cdbd2cSJim Jagielski 153*b1cdbd2cSJim Jagielski #ifdef _SVX_OPTLINGU_CXX 154*b1cdbd2cSJim Jagielski DECL_LINK( SelectHdl_Impl, SvxCheckListBox * ); 155*b1cdbd2cSJim Jagielski DECL_LINK( ClickHdl_Impl, PushButton * ); 156*b1cdbd2cSJim Jagielski DECL_LINK( BoxDoubleClickHdl_Impl, SvTreeListBox * ); 157*b1cdbd2cSJim Jagielski DECL_LINK( BoxCheckButtonHdl_Impl, SvTreeListBox * ); 158*b1cdbd2cSJim Jagielski DECL_LINK( PostDblClickHdl_Impl, SvTreeListBox * ); 159*b1cdbd2cSJim Jagielski DECL_LINK( OpenURLHdl_Impl, svt::FixedHyperlink* ); 160*b1cdbd2cSJim Jagielski 161*b1cdbd2cSJim Jagielski void UpdateModulesBox_Impl(); 162*b1cdbd2cSJim Jagielski void UpdateDicBox_Impl(); 163*b1cdbd2cSJim Jagielski #endif 164*b1cdbd2cSJim Jagielski 165*b1cdbd2cSJim Jagielski public: 166*b1cdbd2cSJim Jagielski virtual ~SvxLinguTabPage(); 167*b1cdbd2cSJim Jagielski static SfxTabPage* Create( Window* pParent, const SfxItemSet& rSet ); 168*b1cdbd2cSJim Jagielski static sal_uInt16* GetRanges(); 169*b1cdbd2cSJim Jagielski 170*b1cdbd2cSJim Jagielski virtual sal_Bool FillItemSet( SfxItemSet& rSet ); 171*b1cdbd2cSJim Jagielski virtual void Reset( const SfxItemSet& rSet ); 172*b1cdbd2cSJim Jagielski 173*b1cdbd2cSJim Jagielski void HideGroups( sal_uInt16 nGrp ); 174*b1cdbd2cSJim Jagielski }; 175*b1cdbd2cSJim Jagielski 176*b1cdbd2cSJim Jagielski #endif 177*b1cdbd2cSJim Jagielski 178