LCOV - code coverage report
Current view: top level - libreoffice/sw/source/ui/envelp - label1.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 0 550 0.0 %
Date: 2012-12-27 Functions: 0 66 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : #include <vcl/waitobj.hxx>
      21             : #include <rtl/ustring.hxx>
      22             : #include "svtools/treelistentry.hxx"
      23             : #include <com/sun/star/uno/Sequence.h>
      24             : #include <swtypes.hxx>
      25             : #include <wrtsh.hxx>
      26             : #include <initui.hxx>
      27             : #include <labimp.hxx>
      28             : #include <labfmt.hxx>
      29             : #include <labprt.hxx>
      30             : #include <unotools.hxx>
      31             : #include <dbmgr.hxx>
      32             : #include "uitool.hxx"
      33             : #include <cmdid.h>
      34             : #include <helpid.h>
      35             : #include <globals.hrc>
      36             : #include <label.hrc>
      37             : 
      38             : //impl in envimg.cxx
      39             : extern SW_DLLPUBLIC String MakeSender();
      40             : 
      41             : 
      42           0 : void SwLabRec::SetFromItem( const SwLabItem& rItem )
      43             : {
      44           0 :     lHDist  = rItem.lHDist;
      45           0 :     lVDist  = rItem.lVDist;
      46           0 :     lWidth  = rItem.lWidth;
      47           0 :     lHeight = rItem.lHeight;
      48           0 :     lLeft   = rItem.lLeft;
      49           0 :     lUpper  = rItem.lUpper;
      50           0 :     nCols   = rItem.nCols;
      51           0 :     nRows   = rItem.nRows;
      52           0 :     lPWidth  = rItem.lPWidth;
      53           0 :     lPHeight = rItem.lPHeight;
      54           0 :     bCont   = rItem.bCont;
      55           0 : }
      56             : 
      57           0 : void SwLabRec::FillItem( SwLabItem& rItem ) const
      58             : {
      59           0 :     rItem.lHDist  = lHDist;
      60           0 :     rItem.lVDist  = lVDist;
      61           0 :     rItem.lWidth  = lWidth;
      62           0 :     rItem.lHeight = lHeight;
      63           0 :     rItem.lLeft   = lLeft;
      64           0 :     rItem.lUpper  = lUpper;
      65           0 :     rItem.nCols   = nCols;
      66           0 :     rItem.lPWidth  = lPWidth;
      67           0 :     rItem.lPHeight = lPHeight;
      68           0 :     rItem.nRows   = nRows;
      69           0 : }
      70             : 
      71           0 : void SwLabDlg::_ReplaceGroup( const String &rMake )
      72             : {
      73             :     // Remove old entries
      74           0 :     pRecs->erase(pRecs->begin() + 1, pRecs->end());
      75           0 :     aLabelsCfg.FillLabels(rtl::OUString(rMake), *pRecs);
      76           0 :     aLstGroup = rMake;
      77           0 : }
      78             : 
      79           0 : void SwLabDlg::PageCreated(sal_uInt16 nId, SfxTabPage &rPage)
      80             : {
      81           0 :     if (nId == TP_LAB_LAB)
      82             :     {
      83           0 :         if(m_bLabel)
      84             :         {
      85           0 :             ((SwLabPage*)&rPage)->SetNewDBMgr(pNewDBMgr);
      86           0 :             ((SwLabPage*)&rPage)->InitDatabaseBox();
      87             :         }
      88             :         else
      89           0 :             ((SwLabPage*)&rPage)->SetToBusinessCard();
      90             :     }
      91           0 :     else if (nId == TP_LAB_PRT)
      92           0 :         pPrtPage = (SwLabPrtPage*)&rPage;
      93           0 : }
      94             : 
      95           0 : SwLabDlg::SwLabDlg(Window* pParent, const SfxItemSet& rSet,
      96             :                                 SwNewDBMgr* pDBMgr, sal_Bool bLabel) :
      97             :     SfxTabDialog( pParent, SW_RES(DLG_LAB), &rSet, sal_False ),
      98             :     pNewDBMgr(pDBMgr),
      99             :     pPrtPage(0),
     100             :     aTypeIds( 50, 10 ),
     101           0 :     pRecs   ( new SwLabRecs() ),
     102             :     sBusinessCardDlg(SW_RES(ST_BUSINESSCARDDLG)),
     103             :     sFormat(SW_RES(ST_FIRSTPAGE_LAB)),
     104             :     sMedium(SW_RES(ST_FIRSTPAGE_BC)),
     105           0 :     m_bLabel(bLabel)
     106             : {
     107           0 :     WaitObject aWait( pParent );
     108             : 
     109           0 :     FreeResource();
     110             : 
     111           0 :     GetOKButton().SetText(String(SW_RES(STR_BTN_NEW_DOC)));
     112           0 :     GetOKButton().SetHelpId(HID_LABEL_INSERT);
     113           0 :     GetOKButton().SetHelpText(aEmptyStr);   // in order for generated help text to get used
     114             : 
     115           0 :     AddTabPage(TP_LAB_LAB, m_bLabel ? sFormat : sMedium ,SwLabPage   ::Create, 0, sal_False, 0);
     116           0 :     AddTabPage(TP_VISITING_CARDS, SwVisitingCardPage::Create, 0);
     117           0 :     AddTabPage(TP_LAB_FMT, SwLabFmtPage::Create, 0);
     118           0 :     AddTabPage(TP_LAB_PRT, SwLabPrtPage::Create, 0);
     119           0 :     AddTabPage(TP_BUSINESS_DATA, SwBusinessDataPage::Create, 0 );
     120           0 :     AddTabPage(TP_PRIVATE_DATA, SwPrivateDataPage::Create, 0);
     121             : 
     122             : 
     123           0 :     if(m_bLabel)
     124             :     {
     125           0 :         RemoveTabPage(TP_BUSINESS_DATA);
     126           0 :         RemoveTabPage(TP_PRIVATE_DATA);
     127           0 :         RemoveTabPage(TP_VISITING_CARDS);
     128             :     }
     129             :     else
     130             :     {
     131           0 :         SetText(sBusinessCardDlg);
     132             :     }
     133             :     // Read user label from writer.cfg
     134           0 :     SwLabItem aItem((const SwLabItem&)rSet.Get( FN_LABEL ));
     135           0 :     SwLabRec* pRec = new SwLabRec;
     136           0 :     const String aTmp( SW_RES( STR_CUSTOM ) );
     137           0 :     pRec->aMake   = pRec->aType = aTmp;
     138           0 :     pRec->SetFromItem( aItem );
     139             : 
     140           0 :     sal_Bool bDouble = sal_False;
     141             : 
     142           0 :     for (sal_uInt16 nRecPos = 0; nRecPos < pRecs->size(); nRecPos++)
     143             :     {
     144           0 :         if (pRec->aMake == (*pRecs)[nRecPos]->aMake &&
     145           0 :             pRec->aType == (*pRecs)[nRecPos]->aType)
     146             :         {
     147           0 :             bDouble = sal_True;
     148           0 :             break;
     149             :         }
     150             :     }
     151             : 
     152           0 :     if (!bDouble)
     153           0 :         pRecs->insert( pRecs->begin(), pRec );
     154             : 
     155           0 :     sal_uInt16 nLstGroup = 0;
     156           0 :     const ::com::sun::star::uno::Sequence<rtl::OUString>& rMan = aLabelsCfg.GetManufacturers();
     157           0 :     const rtl::OUString* pMan = rMan.getConstArray();
     158           0 :     for(sal_Int32 nMan = 0; nMan < rMan.getLength(); nMan++)
     159             :     {
     160           0 :         aMakes.push_back(pMan[nMan]);
     161           0 :         if ( pMan[nMan] == aItem.aLstMake )
     162           0 :             nLstGroup = (sal_uInt16) nMan;
     163             :     }
     164             : 
     165           0 :     if ( !aMakes.empty() )
     166           0 :         _ReplaceGroup( aMakes[nLstGroup] );
     167             : 
     168           0 :     if (pExampleSet)
     169           0 :         pExampleSet->Put(aItem);
     170           0 : }
     171             : 
     172           0 : SwLabDlg::~SwLabDlg()
     173             : {
     174           0 :     delete pRecs;
     175           0 : }
     176             : 
     177           0 : void SwLabDlg::GetLabItem(SwLabItem &rItem)
     178             : {
     179           0 :     const SwLabItem& rActItem = (const SwLabItem&)GetExampleSet()->Get(FN_LABEL);
     180           0 :     const SwLabItem& rOldItem = (const SwLabItem&)GetInputSetImpl()->Get(FN_LABEL);
     181             : 
     182           0 :     if (rActItem != rOldItem)
     183             :     {
     184             :         // Was already "put" with (hopefully) correct content
     185           0 :         rItem = rActItem;
     186             :     }
     187             :     else
     188             :     {
     189           0 :         rItem = rOldItem;
     190             : 
     191             :         // In rItem there are only settings defined by users.
     192             :         // Therefore get the real settings directly from Record
     193           0 :         SwLabRec* pRec = GetRecord(rItem.aType, rItem.bCont);
     194           0 :         pRec->FillItem( rItem );
     195             :     }
     196           0 : }
     197             : 
     198           0 : SwLabRec* SwLabDlg::GetRecord(const String &rRecName, sal_Bool bCont)
     199             : {
     200           0 :     SwLabRec* pRec = NULL;
     201           0 :     sal_Bool bFound = sal_False;
     202           0 :     String sCustom(SW_RES(STR_CUSTOM));
     203             : 
     204           0 :     const sal_uInt16 nCount = Recs().size();
     205           0 :     for (sal_uInt16 i = 0; i < nCount; i++)
     206             :     {
     207           0 :         pRec = Recs()[i];
     208           0 :         if (pRec->aType != sCustom &&
     209           0 :             rRecName == pRec->aType && bCont == pRec->bCont)
     210             :         {
     211           0 :             bFound = sal_True;
     212           0 :             break;
     213             :         }
     214             :     }
     215           0 :     if (!bFound)    // User defined
     216           0 :         pRec = Recs()[0];
     217             : 
     218           0 :     return(pRec);
     219             : }
     220             : 
     221           0 : Printer *SwLabDlg::GetPrt()
     222             : {
     223           0 :     if (pPrtPage)
     224           0 :         return (pPrtPage->GetPrt());
     225             :     else
     226           0 :         return (NULL);
     227             : }
     228             : 
     229           0 : SwLabPage::SwLabPage(Window* pParent, const SfxItemSet& rSet) :
     230             :     SfxTabPage(pParent, SW_RES(TP_LAB_LAB), rSet),
     231             :     pNewDBMgr(NULL),
     232           0 :     aItem          ((const SwLabItem&) rSet.Get(FN_LABEL)),
     233             : 
     234             :     aWritingFL     (this, SW_RES(FL_WRITING)),
     235             :     aWritingText   (this, SW_RES(TXT_WRITING)),
     236             :     aAddrBox       (this, SW_RES(BOX_ADDR   )),
     237             :     aWritingEdit   (this, SW_RES(EDT_WRITING)),
     238             :     aDatabaseFT    (this, SW_RES(FT_DATABASE)),
     239             :     aDatabaseLB    (this, SW_RES(LB_DATABASE)),
     240             :     aTableFT       (this, SW_RES(FT_TABLE   )),
     241             :     aTableLB       (this, SW_RES(LB_TABLE   )),
     242             :     aInsertBT      (this, SW_RES(BTN_INSERT )),
     243             :     aDBFieldFT     (this, SW_RES(FT_DBFIELD )),
     244             :     aDBFieldLB     (this, SW_RES(LB_DBFIELD )),
     245             :     aFormatFL      (this, SW_RES(FL_FORMAT )),
     246             :     aContButton    (this, SW_RES(BTN_CONT   )),
     247             :     aSheetButton   (this, SW_RES(BTN_SHEET  )),
     248             :     aMakeText      (this, SW_RES(TXT_MAKE   )),
     249             :     aMakeBox       (this, SW_RES(BOX_MAKE   )),
     250             :     aTypeText      (this, SW_RES(TXT_TYPE   )),
     251             :     aTypeBox       (this, SW_RES(BOX_TYPE   )),
     252             :     aHiddenSortTypeBox(this, WB_SORT|WB_HIDE),
     253           0 :     aFormatInfo    (this, SW_RES(INF_FORMAT ))
     254             :    {
     255           0 :     WaitObject aWait( pParent );
     256             : 
     257           0 :     FreeResource();
     258           0 :     SetExchangeSupport();
     259             : 
     260             : 
     261             :     // Install handlers
     262           0 :     aAddrBox       .SetClickHdl (LINK(this, SwLabPage, AddrHdl         ));
     263           0 :     aDatabaseLB    .SetSelectHdl(LINK(this, SwLabPage, DatabaseHdl     ));
     264           0 :     aTableLB       .SetSelectHdl(LINK(this, SwLabPage, DatabaseHdl     ));
     265           0 :     aInsertBT      .SetClickHdl (LINK(this, SwLabPage, FieldHdl        ));
     266           0 :     aContButton    .SetClickHdl (LINK(this, SwLabPage, PageHdl         ));
     267           0 :     aSheetButton   .SetClickHdl (LINK(this, SwLabPage, PageHdl         ));
     268           0 :     aMakeBox       .SetSelectHdl(LINK(this, SwLabPage, MakeHdl         ));
     269           0 :     aTypeBox       .SetSelectHdl(LINK(this, SwLabPage, TypeHdl         ));
     270             : 
     271           0 :     InitDatabaseBox();
     272             : 
     273           0 :     size_t nLstGroup = 0;
     274             : 
     275           0 :     const sal_uInt16 nCount = (sal_uInt16)GetParentSwLabDlg()->Makes().size();
     276           0 :     for(size_t i = 0; i < nCount; ++i)
     277             :     {
     278           0 :         rtl::OUString& rStr = GetParentSwLabDlg()->Makes()[i];
     279           0 :         aMakeBox.InsertEntry( rStr );
     280             : 
     281           0 :         if ( rStr == aItem.aLstMake)
     282           0 :             nLstGroup = i;
     283             :     }
     284             : 
     285           0 :     aMakeBox.SelectEntryPos( nLstGroup );
     286           0 :     aMakeBox.GetSelectHdl().Call( &aMakeBox );
     287           0 : }
     288             : 
     289           0 : SwLabPage::~SwLabPage()
     290             : {
     291           0 : }
     292             : 
     293           0 : static void lcl_ChgYPos(Window& rWin, long nDiff)
     294             : {
     295           0 :     Point aTempPos(rWin.GetPosPixel());
     296           0 :     aTempPos.Y() += nDiff;
     297           0 :     rWin.SetPosPixel(aTempPos);
     298           0 : }
     299             : 
     300           0 : void SwLabPage::SetToBusinessCard()
     301             : {
     302           0 :     SetHelpId(HID_BUSINESS_FMT_PAGE);
     303           0 :     aContButton.SetHelpId(HID_BUSINESS_FMT_PAGE_CONT);
     304           0 :     aSheetButton.SetHelpId(HID_BUSINESS_FMT_PAGE_SHEET);
     305           0 :     aMakeBox.SetHelpId(HID_BUSINESS_FMT_PAGE_BRAND);
     306           0 :     aTypeBox.SetHelpId(HID_BUSINESS_FMT_PAGE_TYPE);
     307           0 :     m_bLabel = sal_False;
     308           0 :     aWritingText.Hide();
     309           0 :     aAddrBox.Hide();
     310           0 :     aWritingEdit.Hide();
     311           0 :     aDatabaseFT.Hide();
     312           0 :     aDatabaseLB.Hide();
     313           0 :     aTableFT.Hide();
     314           0 :     aTableLB.Hide();
     315           0 :     aInsertBT.Hide();
     316           0 :     aDBFieldFT.Hide();
     317           0 :     aDBFieldLB.Hide();
     318           0 :     aWritingFL.Hide();
     319             : 
     320             :     //resize the form
     321           0 :     Point aFLPos(aWritingFL.GetPosPixel());
     322           0 :     long nDiffPos = aFormatFL.GetPosPixel().Y() - aFLPos.Y();
     323           0 :     Size aFLSz(aFormatFL.GetSizePixel());
     324           0 :     aFormatFL.SetPosSizePixel(aFLPos, aFLSz);
     325             : 
     326             :     // move all controls up
     327           0 :     lcl_ChgYPos(aContButton, -nDiffPos);
     328           0 :     lcl_ChgYPos(aSheetButton, -nDiffPos);
     329           0 :     lcl_ChgYPos(aMakeText, -nDiffPos);
     330             : 
     331           0 :     lcl_ChgYPos(aTypeText, -nDiffPos);
     332           0 :     lcl_ChgYPos(aFormatInfo, -nDiffPos);
     333             : 
     334           0 :     Size aTmpSz(3, 3);
     335           0 :     aTmpSz = LogicToPixel(aTmpSz, MAP_APPFONT);
     336             : 
     337           0 :     lcl_ChgYPos(aMakeBox, - nDiffPos);
     338           0 :     Point aLBPos(aMakeBox.GetPosPixel());
     339           0 :     aLBPos.Y() += aMakeBox.GetSizePixel().Height() + aTmpSz.Height();
     340           0 :     aTypeBox.SetPosPixel(aLBPos);
     341           0 : };
     342             : 
     343           0 : IMPL_LINK_NOARG(SwLabPage, AddrHdl)
     344             : {
     345           0 :     String aWriting;
     346             : 
     347           0 :     if ( aAddrBox.IsChecked() )
     348           0 :         aWriting = convertLineEnd(MakeSender(), GetSystemLineEnd());
     349             : 
     350           0 :     aWritingEdit.SetText( aWriting );
     351           0 :     aWritingEdit.GrabFocus();
     352           0 :     return 0;
     353             : }
     354             : 
     355           0 : IMPL_LINK( SwLabPage, DatabaseHdl, ListBox *, pListBox )
     356             : {
     357           0 :     sActDBName = aDatabaseLB.GetSelectEntry();
     358             : 
     359           0 :     WaitObject aObj( GetParentSwLabDlg() );
     360             : 
     361           0 :     if (pListBox == &aDatabaseLB)
     362           0 :         GetNewDBMgr()->GetTableNames(&aTableLB, sActDBName);
     363             : 
     364           0 :     GetNewDBMgr()->GetColumnNames(&aDBFieldLB, sActDBName, aTableLB.GetSelectEntry());
     365           0 :     return 0;
     366             : }
     367             : 
     368           0 : IMPL_LINK_NOARG(SwLabPage, FieldHdl)
     369             : {
     370           0 :     rtl::OUStringBuffer aStr;
     371           0 :     aStr.append('<');
     372           0 :     aStr.append(aDatabaseLB.GetSelectEntry());
     373           0 :     aStr.append('.');
     374           0 :     aStr.append(aTableLB.GetSelectEntry());
     375           0 :     aStr.append('.');
     376           0 :     aStr.append(aTableLB.GetEntryData(aTableLB.GetSelectEntryPos()) == 0 ? '0' : '1');
     377           0 :     aStr.append('.');
     378           0 :     aStr.append(aDBFieldLB.GetSelectEntry());
     379           0 :     aStr.append('>');
     380           0 :     aWritingEdit.ReplaceSelected(aStr.makeStringAndClear());
     381           0 :     Selection aSel = aWritingEdit.GetSelection();
     382           0 :     aWritingEdit.GrabFocus();
     383           0 :     aWritingEdit.SetSelection(aSel);
     384           0 :     return 0;
     385             : }
     386             : 
     387           0 : IMPL_LINK_NOARG_INLINE_START(SwLabPage, PageHdl)
     388             : {
     389           0 :     aMakeBox.GetSelectHdl().Call( &aMakeBox );
     390           0 :     return 0;
     391             : }
     392           0 : IMPL_LINK_NOARG_INLINE_END(SwLabPage, PageHdl)
     393             : 
     394           0 : IMPL_LINK_NOARG(SwLabPage, MakeHdl)
     395             : {
     396           0 :     WaitObject aWait( GetParentSwLabDlg() );
     397             : 
     398           0 :     aTypeBox.Clear();
     399           0 :     aHiddenSortTypeBox.Clear();
     400           0 :     GetParentSwLabDlg()->TypeIds().clear();
     401             : 
     402           0 :     const String aMake = aMakeBox.GetSelectEntry();
     403           0 :     GetParentSwLabDlg()->ReplaceGroup( aMake );
     404           0 :     aItem.aLstMake = aMake;
     405             : 
     406           0 :     const sal_Bool   bCont    = aContButton.IsChecked();
     407           0 :     const sal_uInt16 nCount   = GetParentSwLabDlg()->Recs().size();
     408           0 :           sal_uInt16 nLstType = 0;
     409             : 
     410           0 :     const String sCustom(SW_RES(STR_CUSTOM));
     411             :     //insert the entries into the sorted list box
     412           0 :     for ( sal_uInt16 i = 0; i < nCount; ++i )
     413             :     {
     414           0 :         const String aType ( GetParentSwLabDlg()->Recs()[i]->aType );
     415           0 :         sal_Bool bInsert = sal_False;
     416           0 :         if ( GetParentSwLabDlg()->Recs()[i]->aType == sCustom )
     417             :         {
     418           0 :             bInsert = sal_True;
     419           0 :             aTypeBox.InsertEntry(aType );
     420             :         }
     421           0 :         else if ( GetParentSwLabDlg()->Recs()[i]->bCont == bCont )
     422             :         {
     423           0 :             if ( aHiddenSortTypeBox.GetEntryPos(aType) == LISTBOX_ENTRY_NOTFOUND )
     424             :             {
     425           0 :                 bInsert = sal_True;
     426           0 :                 aHiddenSortTypeBox.InsertEntry( aType );
     427             :             }
     428             :         }
     429           0 :         if(bInsert)
     430             :         {
     431           0 :             GetParentSwLabDlg()->TypeIds().push_back(i);
     432           0 :             if ( !nLstType && aType == String(aItem.aLstType) )
     433           0 :                 nLstType = GetParentSwLabDlg()->TypeIds().size();
     434             :         }
     435           0 :     }
     436           0 :     for(sal_uInt16 nEntry = 0; nEntry < aHiddenSortTypeBox.GetEntryCount(); nEntry++)
     437             :     {
     438           0 :         aTypeBox.InsertEntry(aHiddenSortTypeBox.GetEntry(nEntry));
     439             :     }
     440           0 :     if (nLstType)
     441           0 :         aTypeBox.SelectEntry(aItem.aLstType);
     442             :     else
     443           0 :         aTypeBox.SelectEntryPos(0);
     444           0 :     aTypeBox.GetSelectHdl().Call( &aTypeBox );
     445           0 :     return 0;
     446             : }
     447             : 
     448           0 : IMPL_LINK_NOARG_INLINE_START(SwLabPage, TypeHdl)
     449             : {
     450           0 :     DisplayFormat();
     451           0 :     aItem.aType = aTypeBox.GetSelectEntry();
     452           0 :     return 0;
     453             : }
     454           0 : IMPL_LINK_NOARG_INLINE_END(SwLabPage, TypeHdl)
     455             : 
     456           0 : void SwLabPage::DisplayFormat()
     457             : {
     458           0 :     MetricField aField(this, WinBits(0));
     459           0 :     FieldUnit aMetric = ::GetDfltMetric(sal_False);
     460           0 :     SetMetric(aField, aMetric);
     461           0 :     aField.SetDecimalDigits(2);
     462           0 :     aField.SetMin         (0);
     463           0 :     aField.SetMax         (LONG_MAX);
     464             : 
     465           0 :     SwLabRec* pRec = GetSelectedEntryPos();
     466           0 :     aItem.aLstType = pRec->aType;
     467           0 :     SETFLDVAL(aField, pRec->lWidth);
     468           0 :     aField.Reformat();
     469           0 :     const String aWString = aField.GetText();
     470             : 
     471           0 :     SETFLDVAL(aField, pRec->lHeight);
     472           0 :     aField.Reformat();
     473             : 
     474           0 :     String aText = pRec->aType;
     475           0 :     aText.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": "));
     476           0 :     aText += aWString;
     477           0 :     aText.AppendAscii( RTL_CONSTASCII_STRINGPARAM(" x "));
     478           0 :     aText += aField.GetText();
     479           0 :     aText.AppendAscii( RTL_CONSTASCII_STRINGPARAM(" ("));
     480           0 :     aText += String::CreateFromInt32( pRec->nCols );
     481           0 :     aText.AppendAscii( RTL_CONSTASCII_STRINGPARAM(" x "));
     482           0 :     aText += String::CreateFromInt32( pRec->nRows );
     483           0 :     aText += ')';
     484           0 :     aFormatInfo.SetText(aText);
     485           0 : }
     486             : 
     487           0 : SwLabRec* SwLabPage::GetSelectedEntryPos()
     488             : {
     489           0 :     String sSelEntry(aTypeBox.GetSelectEntry());
     490             : 
     491           0 :     return GetParentSwLabDlg()->GetRecord(sSelEntry, aContButton.IsChecked());
     492             : }
     493             : 
     494           0 : void SwLabPage::InitDatabaseBox()
     495             : {
     496           0 :     if( GetNewDBMgr() )
     497             :     {
     498           0 :         aDatabaseLB.Clear();
     499           0 :         ::com::sun::star::uno::Sequence<rtl::OUString> aDataNames = SwNewDBMgr::GetExistingDatabaseNames();
     500           0 :         const rtl::OUString* pDataNames = aDataNames.getConstArray();
     501           0 :         for (long i = 0; i < aDataNames.getLength(); i++)
     502           0 :             aDatabaseLB.InsertEntry(pDataNames[i]);
     503           0 :         String sDBName = sActDBName.GetToken( 0, DB_DELIM );
     504           0 :         String sTableName = sActDBName.GetToken( 1, DB_DELIM );
     505           0 :         aDatabaseLB.SelectEntry(sDBName);
     506           0 :         if( sDBName.Len() && GetNewDBMgr()->GetTableNames(&aTableLB, sDBName))
     507             :         {
     508           0 :             aTableLB.SelectEntry(sTableName);
     509           0 :             GetNewDBMgr()->GetColumnNames(&aDBFieldLB, sActDBName, sTableName);
     510             :         }
     511             :         else
     512           0 :             aDBFieldLB.Clear();
     513             :     }
     514           0 : }
     515             : 
     516           0 : SfxTabPage* SwLabPage::Create(Window* pParent, const SfxItemSet& rSet)
     517             : {
     518           0 :     return new SwLabPage(pParent, rSet);
     519             : }
     520             : 
     521           0 : void SwLabPage::ActivatePage(const SfxItemSet& rSet)
     522             : {
     523           0 :     Reset( rSet );
     524           0 : }
     525             : 
     526           0 : int SwLabPage::DeactivatePage(SfxItemSet* _pSet)
     527             : {
     528           0 :     if (_pSet)
     529           0 :         FillItemSet(*_pSet);
     530             : 
     531           0 :     return sal_True;
     532             : }
     533             : 
     534           0 : void SwLabPage::FillItem(SwLabItem& rItem)
     535             : {
     536           0 :     rItem.bAddr    = aAddrBox.IsChecked();
     537           0 :     rItem.aWriting = aWritingEdit.GetText();
     538           0 :     rItem.bCont    = aContButton.IsChecked();
     539           0 :     rItem.aMake    = aMakeBox.GetSelectEntry();
     540           0 :     rItem.aType    = aTypeBox.GetSelectEntry();
     541           0 :     rItem.sDBName  = sActDBName;
     542             : 
     543           0 :     SwLabRec* pRec = GetSelectedEntryPos();
     544           0 :     pRec->FillItem( rItem );
     545             : 
     546           0 :     rItem.aLstMake = aMakeBox.GetSelectEntry();
     547           0 :     rItem.aLstType = aTypeBox.GetSelectEntry();
     548           0 : }
     549             : 
     550           0 : sal_Bool SwLabPage::FillItemSet(SfxItemSet& rSet)
     551             : {
     552           0 :     FillItem( aItem );
     553           0 :     rSet.Put( aItem );
     554             : 
     555           0 :     return sal_True;
     556             : }
     557             : 
     558           0 : void SwLabPage::Reset(const SfxItemSet& rSet)
     559             : {
     560           0 :     aItem = (const SwLabItem&) rSet.Get(FN_LABEL);
     561           0 :     String sDBName  = aItem.sDBName;
     562             : 
     563           0 :     String aWriting(convertLineEnd(aItem.aWriting, GetSystemLineEnd()));
     564             : 
     565           0 :     aAddrBox    .Check      ( aItem.bAddr );
     566           0 :     aWritingEdit.SetText    ( aWriting );
     567             : 
     568           0 :     for(std::vector<rtl::OUString>::const_iterator i = GetParentSwLabDlg()->Makes().begin(); i != GetParentSwLabDlg()->Makes().end(); ++i)
     569             :     {
     570           0 :         if(aMakeBox.GetEntryPos(String(*i)) == LISTBOX_ENTRY_NOTFOUND)
     571           0 :             aMakeBox.InsertEntry(*i);
     572             :     }
     573             : 
     574           0 :     aMakeBox    .SelectEntry( aItem.aMake );
     575             :     //save the current type
     576           0 :     String sType(aItem.aType);
     577           0 :     aMakeBox.GetSelectHdl().Call( &aMakeBox );
     578           0 :     aItem.aType = sType;
     579             :     //#102806# a newly added make may not be in the type ListBox already
     580           0 :     if (aTypeBox.GetEntryPos(String(aItem.aType)) == LISTBOX_ENTRY_NOTFOUND && !aItem.aMake.isEmpty())
     581           0 :         GetParentSwLabDlg()->UpdateGroup( aItem.aMake );
     582           0 :     if (aTypeBox.GetEntryPos(String(aItem.aType)) != LISTBOX_ENTRY_NOTFOUND)
     583             :     {
     584           0 :         aTypeBox.SelectEntry(aItem.aType);
     585           0 :         aTypeBox.GetSelectHdl().Call(&aTypeBox);
     586             :     }
     587           0 :     if (aDatabaseLB.GetEntryPos(sDBName) != LISTBOX_ENTRY_NOTFOUND)
     588             :     {
     589           0 :         aDatabaseLB.SelectEntry(sDBName);
     590           0 :         aDatabaseLB.GetSelectHdl().Call(&aDatabaseLB);
     591             :     }
     592             : 
     593           0 :     if (aItem.bCont)
     594           0 :         aContButton .Check();
     595             :     else
     596           0 :         aSheetButton.Check();
     597           0 : }
     598             : 
     599           0 : void SwVisitingCardPage::ClearUserData()
     600             : {
     601           0 :     SvTreeListEntry* pEntry = aAutoTextLB.First();
     602           0 :     while(pEntry)
     603             :     {
     604           0 :         delete (String*)pEntry->GetUserData();
     605           0 :         pEntry = aAutoTextLB.Next(pEntry);
     606             :     }
     607           0 : }
     608             : 
     609           0 : void SwVisitingCardPage::SetUserData( sal_uInt32 nCnt,
     610             :                 const rtl::OUString* pNames, const rtl::OUString* pValues )
     611             : {
     612           0 :     for( sal_uInt32 i = 0; i < nCnt; ++i )
     613             :     {
     614           0 :         SvTreeListEntry* pEntry = aAutoTextLB.InsertEntry( pNames[ i ] );
     615           0 :         pEntry->SetUserData( new String( pValues[ i ] ));
     616             :     }
     617           0 : }
     618             : 
     619           0 : SwVisitingCardPage::SwVisitingCardPage(Window* pParent, const SfxItemSet& rSet) :
     620             :     SfxTabPage(pParent, SW_RES(TP_VISITING_CARDS), rSet),
     621             :     aContentFL(this,        SW_RES( FL_CONTENT           )),
     622             :     aAutoTextLB(this,       SW_RES( LB_AUTO_TEXT            )),
     623             :     aAutoTextGroupFT(this,  SW_RES( FT_AUTO_TEXT_GROUP  )),
     624             :     aAutoTextGroupLB(this,  SW_RES( LB_AUTO_TEXT_GROUP  )),
     625             :     aExampleWIN(this,       SW_RES( WIN_EXAMPLE         )),
     626             :     sVisCardGroup(SW_RES(ST_VISCARD_GROUP)),
     627           0 :     pExampleFrame(0)
     628             : {
     629           0 :     FreeResource();
     630           0 :     aAutoTextLB.SetStyle( aAutoTextLB.GetStyle() | WB_HSCROLL );
     631           0 :     aAutoTextLB.SetSpaceBetweenEntries(0);
     632           0 :     aAutoTextLB.SetSelectionMode( SINGLE_SELECTION );
     633           0 :     aAutoTextLB.SetHelpId(HID_BUSINESS_CARD_CONTENT);
     634             : 
     635           0 :     SetExchangeSupport();
     636           0 :     aAutoTextLB.SetSelectHdl(LINK(this, SwVisitingCardPage, AutoTextSelectHdl));
     637           0 :     aAutoTextGroupLB.SetSelectHdl(LINK(this, SwVisitingCardPage, AutoTextSelectHdl));
     638             : 
     639           0 :     aExampleWIN.Hide();
     640             : 
     641           0 :     aAutoTextLB.Show();
     642           0 :     aAutoTextGroupFT.Show();
     643           0 :     aAutoTextGroupLB.Show();
     644           0 :     InitFrameControl();
     645           0 : }
     646             : 
     647           0 : SwVisitingCardPage::~SwVisitingCardPage()
     648             : {
     649           0 :     for(sal_uInt16 i = 0; i < aAutoTextGroupLB.GetEntryCount(); i++)
     650           0 :         delete (String*)aAutoTextGroupLB.GetEntryData( i );
     651           0 :     _xAutoText = 0;
     652             : 
     653           0 :     ClearUserData();
     654           0 :     delete pExampleFrame;
     655           0 : }
     656             : 
     657           0 : SfxTabPage* SwVisitingCardPage::Create(Window* pParent, const SfxItemSet& rSet)
     658             : {
     659           0 :     return new SwVisitingCardPage(pParent, rSet);
     660             : }
     661             : 
     662           0 : void SwVisitingCardPage::ActivatePage(const SfxItemSet& rSet)
     663             : {
     664           0 :     Reset( rSet );
     665           0 :     UpdateFields();
     666           0 : }
     667             : 
     668           0 : int  SwVisitingCardPage::DeactivatePage(SfxItemSet* _pSet)
     669             : {
     670           0 :     if (_pSet)
     671           0 :         FillItemSet(*_pSet);
     672           0 :     return LEAVE_PAGE;
     673             : }
     674             : 
     675           0 : sal_Bool SwVisitingCardPage::FillItemSet(SfxItemSet& rSet)
     676             : {
     677             :     String* pGroup = (String*)aAutoTextGroupLB.GetEntryData(
     678           0 :                                     aAutoTextGroupLB.GetSelectEntryPos());
     679             :     OSL_ENSURE(pGroup, "no group selected?");
     680             : 
     681           0 :     if(pGroup)
     682           0 :         aLabItem.sGlossaryGroup = *pGroup;
     683             : 
     684           0 :     SvTreeListEntry* pSelEntry = aAutoTextLB.FirstSelected();
     685           0 :     if(pSelEntry)
     686           0 :         aLabItem.sGlossaryBlockName = *(String*)pSelEntry->GetUserData();
     687           0 :     rSet.Put(aLabItem);
     688           0 :     return sal_True;
     689             : }
     690             : 
     691           0 : static void lcl_SelectBlock(SvTreeListBox& rAutoTextLB, const String& rBlockName)
     692             : {
     693           0 :     SvTreeListEntry* pEntry = rAutoTextLB.First();
     694           0 :     while(pEntry)
     695             :     {
     696           0 :         if(*(String*)pEntry->GetUserData() == rBlockName)
     697             :         {
     698           0 :             rAutoTextLB.Select(pEntry);
     699           0 :             rAutoTextLB.MakeVisible(pEntry);
     700           0 :             break;
     701             :         }
     702           0 :         pEntry = rAutoTextLB.Next(pEntry);
     703             :     }
     704           0 : }
     705             : 
     706           0 : static sal_Bool lcl_FindBlock(SvTreeListBox& rAutoTextLB, const String& rBlockName)
     707             : {
     708           0 :     SvTreeListEntry* pEntry = rAutoTextLB.First();
     709           0 :     while(pEntry)
     710             :     {
     711           0 :         if(*(String*)pEntry->GetUserData() == rBlockName)
     712             :         {
     713           0 :             rAutoTextLB.Select(pEntry);
     714           0 :             return sal_True;
     715             :         }
     716           0 :         pEntry = rAutoTextLB.Next(pEntry);
     717             :     }
     718           0 :     return sal_False;
     719             : }
     720             : 
     721           0 : void SwVisitingCardPage::Reset(const SfxItemSet& rSet)
     722             : {
     723           0 :     aLabItem = (const SwLabItem&) rSet.Get(FN_LABEL);
     724             : 
     725           0 :     sal_Bool bFound = sal_False;
     726             :     sal_uInt16 i;
     727           0 :     for(i = 0; i < aAutoTextGroupLB.GetEntryCount() && !bFound; i++)
     728           0 :         if( String(aLabItem.sGlossaryGroup) ==
     729           0 :             *(String*)aAutoTextGroupLB.GetEntryData( i ))
     730             :         {
     731           0 :             bFound = sal_True;
     732           0 :             break;
     733             :         }
     734             : 
     735           0 :     if(!bFound)
     736             :     {
     737             :         // initially search for a group starting with "crd" which is the name of the
     738             :         // business card AutoTexts
     739           0 :         for(i = 0; i < aAutoTextGroupLB.GetEntryCount() && !bFound; i++)
     740           0 :             if(0 == (*(String*)aAutoTextGroupLB.GetEntryData( i )).SearchAscii( "crd") )
     741             :             {
     742           0 :                 bFound = sal_True;
     743           0 :                 break;
     744             :             }
     745             :     }
     746           0 :     if(bFound)
     747             :     {
     748           0 :         if(aAutoTextGroupLB.GetSelectEntryPos() != i)
     749             :         {
     750           0 :             aAutoTextGroupLB.SelectEntryPos(i);
     751           0 :             AutoTextSelectHdl(&aAutoTextGroupLB);
     752             :         }
     753           0 :         if(lcl_FindBlock(aAutoTextLB, aLabItem.sGlossaryBlockName))
     754             :         {
     755           0 :             SvTreeListEntry* pSelEntry = aAutoTextLB.FirstSelected();
     756           0 :             if( pSelEntry &&
     757           0 :                 *(String*)pSelEntry->GetUserData() != String(aLabItem.sGlossaryBlockName))
     758             :             {
     759           0 :                 lcl_SelectBlock(aAutoTextLB, aLabItem.sGlossaryBlockName);
     760           0 :                 AutoTextSelectHdl(&aAutoTextLB);
     761             :             }
     762             :         }
     763             :     }
     764           0 : }
     765             : 
     766           0 : SwPrivateDataPage::SwPrivateDataPage(Window* pParent, const SfxItemSet& rSet) :
     767             :     SfxTabPage(pParent, SW_RES(TP_PRIVATE_DATA), rSet),
     768             :     aDataFL             (this, SW_RES( FL_DATA       )),
     769             : 
     770             :     aNameFT             (this, SW_RES( FT_NAME       )),
     771             :     aFirstNameED        (this, SW_RES( ED_FIRSTNAME )),
     772             :     aNameED             (this, SW_RES( ED_NAME      )),
     773             :     aShortCutED         (this, SW_RES( ED_SHORTCUT  )),
     774             : 
     775             :     aName2FT            (this, SW_RES( FT_NAME_2     )),
     776             :     aFirstName2ED       (this, SW_RES( ED_FIRSTNAME_2)),
     777             :     aName2ED            (this, SW_RES( ED_NAME_2        )),
     778             :     aShortCut2ED        (this, SW_RES( ED_SHORTCUT_2    )),
     779             : 
     780             :     aStreetFT           (this, SW_RES( FT_STREET     )),
     781             :     aStreetED           (this, SW_RES( ED_STREET        )),
     782             :     aZipCityFT          (this, SW_RES( FT_ZIPCITY   )),
     783             :     aZipED              (this, SW_RES( ED_ZIP       )),
     784             :     aCityED             (this, SW_RES( ED_CITY      )),
     785             :     aCountryStateFT     (this, SW_RES( FT_COUNTRYSTATE )),
     786             :     aCountryED          (this, SW_RES( ED_COUNTRY   )),
     787             :     aStateED            (this, SW_RES( ED_STATE     )),
     788             :     aTitleProfessionFT  (this, SW_RES( FT_TITLEPROF )),
     789             :     aTitleED            (this, SW_RES( ED_TITLE     )),
     790             :     aProfessionED       (this, SW_RES( ED_PROFESSION )),
     791             :     aPhoneFT            (this, SW_RES( FT_PHONE_MOBILE  )),
     792             :     aPhoneED            (this, SW_RES( ED_PHONE     )),
     793             :     aMobilePhoneED      (this, SW_RES( ED_MOBILE        )),
     794             :     aFaxFT              (this, SW_RES( FT_FAX       )),
     795             :     aFaxED              (this, SW_RES( ED_FAX       )),
     796             :     aWWWMailFT          (this, SW_RES( FT_WWWMAIL   )),
     797             :     aHomePageED         (this, SW_RES( ED_WWW       )),
     798           0 :     aMailED             (this, SW_RES( ED_MAIL      ))
     799             : {
     800           0 :     FreeResource();
     801           0 :     SetExchangeSupport();
     802           0 : }
     803             : 
     804           0 : SwPrivateDataPage::~SwPrivateDataPage()
     805             : {
     806           0 : }
     807             : 
     808           0 : SfxTabPage* SwPrivateDataPage::Create(Window* pParent, const SfxItemSet& rSet)
     809             : {
     810           0 :     return new SwPrivateDataPage(pParent, rSet);
     811             : }
     812             : 
     813           0 : void SwPrivateDataPage::ActivatePage(const SfxItemSet& rSet)
     814             : {
     815           0 :     Reset(rSet);
     816           0 : }
     817             : 
     818           0 : int  SwPrivateDataPage::DeactivatePage(SfxItemSet* _pSet)
     819             : {
     820           0 :     if (_pSet)
     821           0 :         FillItemSet(*_pSet);
     822           0 :     return LEAVE_PAGE;
     823             : }
     824             : 
     825           0 : sal_Bool SwPrivateDataPage::FillItemSet(SfxItemSet& rSet)
     826             : {
     827             : 
     828           0 :     SwLabItem aItem = (const SwLabItem&) GetTabDialog()->GetExampleSet()->Get(FN_LABEL);
     829           0 :     aItem.aPrivFirstName = aFirstNameED .GetText();
     830           0 :     aItem.aPrivName      = aNameED      .GetText(  );
     831           0 :     aItem.aPrivShortCut  = aShortCutED  .GetText(  );
     832           0 :     aItem.aPrivFirstName2 = aFirstName2ED   .GetText();
     833           0 :     aItem.aPrivName2     = aName2ED     .GetText(  );
     834           0 :     aItem.aPrivShortCut2 = aShortCut2ED .GetText(  );
     835           0 :     aItem.aPrivStreet    = aStreetED    .GetText(  );
     836           0 :     aItem.aPrivZip       = aZipED       .GetText(  );
     837           0 :     aItem.aPrivCity      = aCityED      .GetText(  );
     838           0 :     aItem.aPrivCountry   = aCountryED   .GetText(  );
     839           0 :     aItem.aPrivState     = aStateED     .GetText(  );
     840           0 :     aItem.aPrivTitle     = aTitleED     .GetText(  );
     841           0 :     aItem.aPrivProfession= aProfessionED.GetText(   );
     842           0 :     aItem.aPrivPhone     = aPhoneED     .GetText(  );
     843           0 :     aItem.aPrivMobile    = aMobilePhoneED.GetText(  );
     844           0 :     aItem.aPrivFax       = aFaxED       .GetText(  );
     845           0 :     aItem.aPrivWWW       = aHomePageED  .GetText(  );
     846           0 :     aItem.aPrivMail      = aMailED      .GetText(  );
     847             : 
     848           0 :     rSet.Put(aItem);
     849           0 :     return sal_True;
     850             : }
     851             : 
     852           0 : void SwPrivateDataPage::Reset(const SfxItemSet& rSet)
     853             : {
     854           0 :     const SwLabItem& aItem = (const SwLabItem&) rSet.Get(FN_LABEL);
     855           0 :     aFirstNameED.SetText(aItem.aPrivFirstName);
     856           0 :     aNameED     .SetText(aItem.aPrivName);
     857           0 :     aShortCutED .SetText(aItem.aPrivShortCut);
     858           0 :     aFirstName2ED.SetText(aItem.aPrivFirstName2);
     859           0 :     aName2ED     .SetText(aItem.aPrivName2);
     860           0 :     aShortCut2ED .SetText(aItem.aPrivShortCut2);
     861           0 :     aStreetED   .SetText(aItem.aPrivStreet);
     862           0 :     aZipED      .SetText(aItem.aPrivZip);
     863           0 :     aCityED     .SetText(aItem.aPrivCity);
     864           0 :     aCountryED  .SetText(aItem.aPrivCountry);
     865           0 :     aStateED    .SetText(aItem.aPrivState);
     866           0 :     aTitleED    .SetText(aItem.aPrivTitle);
     867           0 :     aProfessionED.SetText(aItem.aPrivProfession);
     868           0 :     aPhoneED    .SetText(aItem.aPrivPhone);
     869           0 :     aMobilePhoneED.SetText(aItem.aPrivMobile);
     870           0 :     aFaxED      .SetText(aItem.aPrivFax);
     871           0 :     aHomePageED .SetText(aItem.aPrivWWW);
     872           0 :     aMailED     .SetText(aItem.aPrivMail);
     873           0 : }
     874             : 
     875           0 : SwBusinessDataPage::SwBusinessDataPage(Window* pParent, const SfxItemSet& rSet) :
     876             :     SfxTabPage(pParent, SW_RES(TP_BUSINESS_DATA), rSet),
     877             :     aDataFL             (this, SW_RES( FL_DATA       )),
     878             :     aCompanyFT          (this, SW_RES( FT_COMP      )),
     879             :     aCompanyED          (this, SW_RES( ED_COMP      )),
     880             :     aCompanyExtFT       (this, SW_RES( FT_COMP_EXT  )),
     881             :     aCompanyExtED       (this, SW_RES( ED_COMP_EXT  )),
     882             :     aSloganFT           (this, SW_RES( FT_SLOGAN        )),
     883             :     aSloganED           (this, SW_RES( ED_SLOGAN        )),
     884             :     aStreetFT           (this, SW_RES( FT_STREET        )),
     885             :     aStreetED           (this, SW_RES( ED_STREET        )),
     886             :     aZipCityFT          (this, SW_RES( FT_ZIPCITY   )),
     887             :     aZipED              (this, SW_RES( ED_ZIP       )),
     888             :     aCityED             (this, SW_RES( ED_CITY      )),
     889             :     aCountryStateFT     (this, SW_RES( FT_COUNTRYSTATE  )),
     890             :     aCountryED          (this, SW_RES( ED_COUNTRY   )),
     891             :     aStateED            (this, SW_RES( ED_STATE     )),
     892             :     aPositionFT         (this, SW_RES( FT_POSITION  )),
     893             :     aPositionED         (this, SW_RES( ED_POSITION  )),
     894             :     aPhoneFT            (this, SW_RES( FT_PHONE_MOBILE  )),
     895             :     aPhoneED            (this, SW_RES( ED_PHONE     )),
     896             :     aMobilePhoneED      (this, SW_RES( ED_MOBILE        )),
     897             :     aFaxFT              (this, SW_RES( FT_FAX       )),
     898             :     aFaxED              (this, SW_RES( ED_FAX       )),
     899             :     aWWWMailFT          (this, SW_RES( FT_WWWMAIL   )),
     900             :     aHomePageED         (this, SW_RES( ED_WWW       )),
     901           0 :     aMailED             (this, SW_RES( ED_MAIL      ))
     902             : {
     903           0 :     FreeResource();
     904           0 :     SetExchangeSupport();
     905           0 : }
     906             : 
     907             : 
     908           0 : SwBusinessDataPage::~SwBusinessDataPage()
     909             : {
     910           0 : }
     911             : 
     912           0 : SfxTabPage* SwBusinessDataPage::Create(Window* pParent, const SfxItemSet& rSet)
     913             : {
     914           0 :     return new SwBusinessDataPage(pParent, rSet);
     915             : }
     916             : 
     917           0 : void SwBusinessDataPage::ActivatePage(const SfxItemSet& rSet)
     918             : {
     919           0 :     Reset(rSet);
     920           0 : }
     921             : 
     922           0 : int  SwBusinessDataPage::DeactivatePage(SfxItemSet* _pSet)
     923             : {
     924           0 :     if (_pSet)
     925           0 :         FillItemSet(*_pSet);
     926           0 :     return LEAVE_PAGE;
     927             : }
     928             : 
     929           0 : sal_Bool SwBusinessDataPage::FillItemSet(SfxItemSet& rSet)
     930             : {
     931           0 :     SwLabItem aItem = (const SwLabItem&) GetTabDialog()->GetExampleSet()->Get(FN_LABEL);
     932             : 
     933           0 :     aItem.aCompCompany   = aCompanyED      .GetText();
     934           0 :     aItem.aCompCompanyExt= aCompanyExtED   .GetText();
     935           0 :     aItem.aCompSlogan    = aSloganED       .GetText();
     936           0 :     aItem.aCompStreet    = aStreetED       .GetText();
     937           0 :     aItem.aCompZip       = aZipED          .GetText();
     938           0 :     aItem.aCompCity      = aCityED         .GetText();
     939           0 :     aItem.aCompCountry   = aCountryED      .GetText();
     940           0 :     aItem.aCompState     = aStateED        .GetText();
     941           0 :     aItem.aCompPosition  = aPositionED     .GetText();
     942           0 :     aItem.aCompPhone     = aPhoneED        .GetText();
     943           0 :     aItem.aCompMobile    = aMobilePhoneED  .GetText();
     944           0 :     aItem.aCompFax       = aFaxED          .GetText();
     945           0 :     aItem.aCompWWW       = aHomePageED     .GetText();
     946           0 :     aItem.aCompMail      = aMailED         .GetText();
     947             : 
     948           0 :     rSet.Put(aItem);
     949           0 :     return sal_True;
     950             : }
     951             : 
     952           0 : void SwBusinessDataPage::Reset(const SfxItemSet& rSet)
     953             : {
     954           0 :     const SwLabItem& aItem = (const SwLabItem&) rSet.Get(FN_LABEL);
     955           0 :     aCompanyED      .SetText(aItem.aCompCompany);
     956           0 :     aCompanyExtED   .SetText(aItem.aCompCompanyExt);
     957           0 :     aSloganED       .SetText(aItem.aCompSlogan);
     958           0 :     aStreetED       .SetText(aItem.aCompStreet);
     959           0 :     aZipED          .SetText(aItem.aCompZip);
     960           0 :     aCityED         .SetText(aItem.aCompCity);
     961           0 :     aCountryED      .SetText(aItem.aCompCountry);
     962           0 :     aStateED        .SetText(aItem.aCompState);
     963           0 :     aPositionED     .SetText(aItem.aCompPosition);
     964           0 :     aPhoneED        .SetText(aItem.aCompPhone);
     965           0 :     aMobilePhoneED  .SetText(aItem.aCompMobile);
     966           0 :     aFaxED          .SetText(aItem.aCompFax);
     967           0 :     aHomePageED     .SetText(aItem.aCompWWW);
     968           0 :     aMailED         .SetText(aItem.aCompMail);
     969           0 : }
     970             : 
     971             : 
     972             : 
     973             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10