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