1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: modcfg.cxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 // MARKER(update_precomp.py): autogen include statement, do not remove
32 #include "precompiled_sw.hxx"
35 #include <hintids.hxx>
36 #include <sot/clsids.hxx>
37 #include <tools/stream.hxx>
38 #include <vcl/svapp.hxx>
39 #include <goodies/mailenum.hxx>
40 #ifndef _SVX_SVXIDS_HRC //autogen
41 #include <svx/svxids.hrc>
43 #include <svx/svxenum.hxx>
44 #include <tools/debug.hxx>
46 #include <tools/globname.hxx>
47 #include <swtypes.hxx>
48 #include <itabenum.hxx>
52 #include <fldupde.hxx>
53 #include <svtools/syslocaleoptions.hxx>
54 #include <caption.hxx>
55 #include <com/sun/star/uno/Any.hxx>
61 using namespace com::sun::star::uno
;
63 #define GLOB_NAME_CALC 0
64 #define GLOB_NAME_IMPRESS 1
65 #define GLOB_NAME_DRAW 2
66 #define GLOB_NAME_MATH 3
67 #define GLOB_NAME_CHART 4
69 SV_IMPL_PTRARR_SORT(InsCapOptArr
, InsCaptionOptPtr
)
70 /* -----------------03.11.98 13:46-------------------
72 * --------------------------------------------------*/
73 InsCaptionOpt
* InsCaptionOptArr::Find(const SwCapObjType eType
, const SvGlobalName
*pOleId
) const
75 for (USHORT i
= 0; i
< Count(); i
++ )
77 InsCaptionOpt
* pObj
= GetObject(i
);
78 if (pObj
->GetObjType() == eType
&&
81 pObj
->GetOleId() == *pOleId
)))
88 /* -----------------03.11.98 15:05-------------------
90 * --------------------------------------------------*/
92 const InsCaptionOpt
* SwModuleOptions::GetCapOption(
93 BOOL bHTML
, const SwCapObjType eType
, const SvGlobalName
*pOleId
)
97 DBG_ERROR("no caption option in sw/web!");
102 sal_Bool bFound
= FALSE
;
103 if(eType
== OLE_CAP
&& pOleId
)
105 for( USHORT nId
= 0; nId
<= GLOB_NAME_CHART
&& !bFound
; nId
++)
106 bFound
= *pOleId
== aInsertConfig
.aGlobalNames
[nId
];
108 return aInsertConfig
.pOLEMiscOpt
;
110 return aInsertConfig
.pCapOptions
->Find(eType
, pOleId
);
114 /* -----------------03.11.98 15:05-------------------
116 * --------------------------------------------------*/
118 BOOL
SwModuleOptions::SetCapOption(BOOL bHTML
, const InsCaptionOpt
* pOpt
)
124 DBG_ERROR("no caption option in sw/web!");
128 sal_Bool bFound
= FALSE
;
129 if(pOpt
->GetObjType() == OLE_CAP
&& &pOpt
->GetOleId())
131 for( USHORT nId
= 0; nId
<= GLOB_NAME_CHART
; nId
++)
132 bFound
= pOpt
->GetOleId() == aInsertConfig
.aGlobalNames
[nId
];
135 if(aInsertConfig
.pOLEMiscOpt
)
136 *aInsertConfig
.pOLEMiscOpt
= *pOpt
;
138 aInsertConfig
.pOLEMiscOpt
= new InsCaptionOpt(*pOpt
);
142 InsCaptionOptArr
& rArr
= *aInsertConfig
.pCapOptions
;
143 InsCaptionOpt
*pObj
= rArr
.Find(pOpt
->GetObjType(), &pOpt
->GetOleId());
150 rArr
.Insert(new InsCaptionOpt(*pOpt
));
152 aInsertConfig
.SetModified();
158 /*-----------------13.01.97 12.44-------------------
160 --------------------------------------------------*/
161 SwModuleOptions::SwModuleOptions() :
162 aInsertConfig(FALSE
),
163 aWebInsertConfig(TRUE
),
165 aWebTableConfig(TRUE
),
166 bHideFieldTips(FALSE
)
169 /* -----------------------------19.01.01 12:26--------------------------------
171 ---------------------------------------------------------------------------*/
172 String
SwModuleOptions::ConvertWordDelimiter(const String
& rDelim
, BOOL bFromUI
)
182 while (i
< rDelim
.Len())
184 c
= rDelim
.GetChar(i
++);
188 c
= rDelim
.GetChar(i
++);
192 case 'n': sReturn
+= '\n'; break;
193 case 't': sReturn
+= '\t'; break;
194 case '\\': sReturn
+= '\\'; break;
198 sal_Unicode nVal
, nChar
;
199 BOOL bValidData
= TRUE
;
201 for( n
= 0, nChar
= 0; n
< 2 && i
< rDelim
.Len(); ++n
, ++i
)
203 if( ((nVal
= rDelim
.GetChar( i
)) >= '0') && ( nVal
<= '9') )
205 else if( (nVal
>= 'A') && (nVal
<= 'F') )
207 else if( (nVal
>= 'a') && (nVal
<= 'f') )
211 DBG_ERROR( "ungueltiger Hex-Wert" );
217 nChar
= nChar
+ nVal
;
224 default: // Unbekannt, daher nur Backslash einfuegen
236 for (xub_StrLen i
= 0; i
< rDelim
.Len(); i
++)
238 sal_Unicode c
= rDelim
.GetChar(i
);
242 case '\n': sReturn
.AppendAscii(RTL_CONSTASCII_STRINGPARAM("\\n")); break;
243 case '\t': sReturn
.AppendAscii(RTL_CONSTASCII_STRINGPARAM("\\t")); break;
244 case '\\': sReturn
.AppendAscii(RTL_CONSTASCII_STRINGPARAM("\\\\")); break;
247 if( c
<= 0x1f || c
>= 0x7f )
249 sReturn
.AppendAscii( RTL_CONSTASCII_STRINGPARAM( "\\x" ))
250 += String::CreateFromInt32( c
, 16 );
259 /* -----------------------------10.10.00 16:22--------------------------------
261 ---------------------------------------------------------------------------*/
262 const Sequence
<OUString
>& SwRevisionConfig::GetPropertyNames()
264 static Sequence
<OUString
> aNames
;
265 if(!aNames
.getLength())
267 const int nCount
= 8;
268 aNames
.realloc(nCount
);
269 static const char* aPropNames
[] =
271 "TextDisplay/Insert/Attribute", // 0
272 "TextDisplay/Insert/Color", // 1
273 "TextDisplay/Delete/Attribute", // 2
274 "TextDisplay/Delete/Color", // 3
275 "TextDisplay/ChangedAttribute/Attribute", // 4
276 "TextDisplay/ChangedAttribute/Color", // 5
277 "LinesChanged/Mark", // 6
278 "LinesChanged/Color" // 7
280 OUString
* pNames
= aNames
.getArray();
281 for(int i
= 0; i
< nCount
; i
++)
282 pNames
[i
] = OUString::createFromAscii(aPropNames
[i
]);
286 /*-- 10.10.00 16:22:22---------------------------------------------------
288 -----------------------------------------------------------------------*/
289 SwRevisionConfig::SwRevisionConfig() :
290 ConfigItem(C2U("Office.Writer/Revision"),
291 CONFIG_MODE_DELAYED_UPDATE
|CONFIG_MODE_RELEASE_TREE
)
293 aInsertAttr
.nItemId
= SID_ATTR_CHAR_UNDERLINE
;
294 aInsertAttr
.nAttr
= UNDERLINE_SINGLE
;
295 aInsertAttr
.nColor
= COL_TRANSPARENT
;
296 aDeletedAttr
.nItemId
= SID_ATTR_CHAR_STRIKEOUT
;
297 aDeletedAttr
.nAttr
= STRIKEOUT_SINGLE
;
298 aDeletedAttr
.nColor
= COL_TRANSPARENT
;
299 aFormatAttr
.nItemId
= SID_ATTR_CHAR_WEIGHT
;
300 aFormatAttr
.nAttr
= WEIGHT_BOLD
;
301 aFormatAttr
.nColor
= COL_BLACK
;
305 /*-- 10.10.00 16:22:23---------------------------------------------------
307 -----------------------------------------------------------------------*/
308 SwRevisionConfig::~SwRevisionConfig()
311 /*-- 10.10.00 16:22:56---------------------------------------------------
313 -----------------------------------------------------------------------*/
314 sal_Int32
lcl_ConvertAttrToCfg(const AuthorCharAttr
& rAttr
)
317 switch(rAttr
.nItemId
)
319 case SID_ATTR_CHAR_WEIGHT
: nRet
= 1; break;
320 case SID_ATTR_CHAR_POSTURE
: nRet
= 2; break;
321 case SID_ATTR_CHAR_UNDERLINE
: nRet
= UNDERLINE_SINGLE
== rAttr
.nAttr
? 3 : 4; break;
322 case SID_ATTR_CHAR_STRIKEOUT
: nRet
= 3; break;
323 case SID_ATTR_CHAR_CASEMAP
:
327 case SVX_CASEMAP_VERSALIEN
: nRet
= 5;break;
328 case SVX_CASEMAP_GEMEINE
: nRet
= 6;break;
329 case SVX_CASEMAP_KAPITAELCHEN
: nRet
= 7;break;
330 case SVX_CASEMAP_TITEL
: nRet
= 8;break;
334 case SID_ATTR_BRUSH
: nRet
= 9; break;
338 //-----------------------------------------------------------------------------
339 void SwRevisionConfig::Commit()
341 const Sequence
<OUString
>& aNames
= GetPropertyNames();
342 Sequence
<Any
> aValues(aNames
.getLength());
343 Any
* pValues
= aValues
.getArray();
345 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
350 case 0 : nVal
= lcl_ConvertAttrToCfg(aInsertAttr
); break;
351 case 1 : nVal
= aInsertAttr
.nColor
; break;
352 case 2 : nVal
= lcl_ConvertAttrToCfg(aDeletedAttr
); break;
353 case 3 : nVal
= aDeletedAttr
.nColor
; break;
354 case 4 : nVal
= lcl_ConvertAttrToCfg(aFormatAttr
); break;
355 case 5 : nVal
= aFormatAttr
.nColor
; break;
356 case 6 : nVal
= nMarkAlign
; break;
357 case 7 : nVal
= aMarkColor
.GetColor(); break;
359 pValues
[nProp
] <<= nVal
;
361 PutProperties(aNames
, aValues
);
363 /*-- 10.10.00 16:22:56---------------------------------------------------
365 -----------------------------------------------------------------------*/
366 void lcl_ConvertCfgToAttr(sal_Int32 nVal
, AuthorCharAttr
& rAttr
, sal_Bool bDelete
= sal_False
)
368 rAttr
.nItemId
= rAttr
.nAttr
= 0;
371 case 1: rAttr
.nItemId
= SID_ATTR_CHAR_WEIGHT
; rAttr
.nAttr
= WEIGHT_BOLD
; break;
372 case 2: rAttr
.nItemId
= SID_ATTR_CHAR_POSTURE
; rAttr
.nAttr
= ITALIC_NORMAL
; break;
375 rAttr
.nItemId
= SID_ATTR_CHAR_STRIKEOUT
;
376 rAttr
.nAttr
= STRIKEOUT_SINGLE
;
380 rAttr
.nItemId
= SID_ATTR_CHAR_UNDERLINE
;
381 rAttr
.nAttr
= UNDERLINE_SINGLE
;
384 case 4: rAttr
.nItemId
= SID_ATTR_CHAR_UNDERLINE
;rAttr
.nAttr
= UNDERLINE_DOUBLE
; break;
385 case 5: rAttr
.nItemId
= SID_ATTR_CHAR_CASEMAP
; rAttr
.nAttr
= SVX_CASEMAP_VERSALIEN
; break;
386 case 6: rAttr
.nItemId
= SID_ATTR_CHAR_CASEMAP
; rAttr
.nAttr
= SVX_CASEMAP_GEMEINE
; break;
387 case 7: rAttr
.nItemId
= SID_ATTR_CHAR_CASEMAP
; rAttr
.nAttr
= SVX_CASEMAP_KAPITAELCHEN
; break;
388 case 8: rAttr
.nItemId
= SID_ATTR_CHAR_CASEMAP
; rAttr
.nAttr
= SVX_CASEMAP_TITEL
; break;
389 case 9: rAttr
.nItemId
= SID_ATTR_BRUSH
; break;
392 void SwRevisionConfig::Load()
394 const Sequence
<OUString
>& aNames
= GetPropertyNames();
395 Sequence
<Any
> aValues
= GetProperties(aNames
);
396 const Any
* pValues
= aValues
.getConstArray();
397 DBG_ASSERT(aValues
.getLength() == aNames
.getLength(), "GetProperties failed");
398 if(aValues
.getLength() == aNames
.getLength())
400 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
402 if(pValues
[nProp
].hasValue())
405 pValues
[nProp
] >>= nVal
;
408 case 0 : lcl_ConvertCfgToAttr(nVal
, aInsertAttr
); break;
409 case 1 : aInsertAttr
.nColor
= nVal
; break;
410 case 2 : lcl_ConvertCfgToAttr(nVal
, aDeletedAttr
, sal_True
); break;
411 case 3 : aDeletedAttr
.nColor
= nVal
; break;
412 case 4 : lcl_ConvertCfgToAttr(nVal
, aFormatAttr
); break;
413 case 5 : aFormatAttr
.nColor
= nVal
; break;
414 case 6 : nMarkAlign
= sal::static_int_cast
< sal_uInt16
, sal_Int32
>(nVal
); break;
415 case 7 : aMarkColor
.SetColor(nVal
); break;
421 /* -----------------------------10.10.00 16:22--------------------------------
423 ---------------------------------------------------------------------------*/
424 enum InsertConfigProp
426 INS_PROP_TABLE_HEADER
= 0,
427 INS_PROP_TABLE_REPEATHEADER
, // 1
428 INS_PROP_TABLE_BORDER
, // 2
429 INS_PROP_TABLE_SPLIT
, // 3 from here not in writer/web
430 INS_PROP_CAP_AUTOMATIC
, // 4
431 INS_PROP_CAP_CAPTIONORDERNUMBERINGFIRST
, // 5
432 INS_PROP_CAP_OBJECT_TABLE_ENABLE
, // 6
433 INS_PROP_CAP_OBJECT_TABLE_CATEGORY
, // 7
434 INS_PROP_CAP_OBJECT_TABLE_NUMBERING
, // 8
435 INS_PROP_CAP_OBJECT_TABLE_NUMBERINGSEPARATOR
, // 9
436 INS_PROP_CAP_OBJECT_TABLE_CAPTIONTEXT
, //10
437 INS_PROP_CAP_OBJECT_TABLE_DELIMITER
, //11
438 INS_PROP_CAP_OBJECT_TABLE_LEVEL
, //12
439 INS_PROP_CAP_OBJECT_TABLE_POSITION
, //13
440 INS_PROP_CAP_OBJECT_TABLE_CHARACTERSTYLE
, //14
441 INS_PROP_CAP_OBJECT_FRAME_ENABLE
, //15
442 INS_PROP_CAP_OBJECT_FRAME_CATEGORY
, //16
443 INS_PROP_CAP_OBJECT_FRAME_NUMBERING
, //17
444 INS_PROP_CAP_OBJECT_FRAME_NUMBERINGSEPARATOR
, //18
445 INS_PROP_CAP_OBJECT_FRAME_CAPTIONTEXT
, //19
446 INS_PROP_CAP_OBJECT_FRAME_DELIMITER
, //20
447 INS_PROP_CAP_OBJECT_FRAME_LEVEL
, //21
448 INS_PROP_CAP_OBJECT_FRAME_POSITION
, //22
449 INS_PROP_CAP_OBJECT_FRAME_CHARACTERSTYLE
, //23
450 INS_PROP_CAP_OBJECT_GRAPHIC_ENABLE
, //24
451 INS_PROP_CAP_OBJECT_GRAPHIC_CATEGORY
, //25
452 INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERING
, //26
453 INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERINGSEPARATOR
, //27
454 INS_PROP_CAP_OBJECT_GRAPHIC_CAPTIONTEXT
, //28
455 INS_PROP_CAP_OBJECT_GRAPHIC_DELIMITER
, //29
456 INS_PROP_CAP_OBJECT_GRAPHIC_LEVEL
, //30
457 INS_PROP_CAP_OBJECT_GRAPHIC_POSITION
, //31
458 INS_PROP_CAP_OBJECT_GRAPHIC_CHARACTERSTYLE
, //32
459 INS_PROP_CAP_OBJECT_GRAPHIC_APPLYATTRIBUTES
, //33
460 INS_PROP_CAP_OBJECT_CALC_ENABLE
, //34
461 INS_PROP_CAP_OBJECT_CALC_CATEGORY
, //35
462 INS_PROP_CAP_OBJECT_CALC_NUMBERING
, //36
463 INS_PROP_CAP_OBJECT_CALC_NUMBERINGSEPARATOR
, //37
464 INS_PROP_CAP_OBJECT_CALC_CAPTIONTEXT
, //38
465 INS_PROP_CAP_OBJECT_CALC_DELIMITER
, //39
466 INS_PROP_CAP_OBJECT_CALC_LEVEL
, //40
467 INS_PROP_CAP_OBJECT_CALC_POSITION
, //41
468 INS_PROP_CAP_OBJECT_CALC_CHARACTERSTYLE
, //42
469 INS_PROP_CAP_OBJECT_CALC_APPLYATTRIBUTES
, //43
470 INS_PROP_CAP_OBJECT_IMPRESS_ENABLE
, //44
471 INS_PROP_CAP_OBJECT_IMPRESS_CATEGORY
, //45
472 INS_PROP_CAP_OBJECT_IMPRESS_NUMBERING
, //46
473 INS_PROP_CAP_OBJECT_IMPRESS_NUMBERINGSEPARATOR
, //47
474 INS_PROP_CAP_OBJECT_IMPRESS_CAPTIONTEXT
, //48
475 INS_PROP_CAP_OBJECT_IMPRESS_DELIMITER
, //49
476 INS_PROP_CAP_OBJECT_IMPRESS_LEVEL
, //50
477 INS_PROP_CAP_OBJECT_IMPRESS_POSITION
, //51
478 INS_PROP_CAP_OBJECT_IMPRESS_CHARACTERSTYLE
, //52
479 INS_PROP_CAP_OBJECT_IMPRESS_APPLYATTRIBUTES
, //53
480 INS_PROP_CAP_OBJECT_CHART_ENABLE
, //54
481 INS_PROP_CAP_OBJECT_CHART_CATEGORY
, //55
482 INS_PROP_CAP_OBJECT_CHART_NUMBERING
, //56
483 INS_PROP_CAP_OBJECT_CHART_NUMBERINGSEPARATOR
, //57
484 INS_PROP_CAP_OBJECT_CHART_CAPTIONTEXT
, //58
485 INS_PROP_CAP_OBJECT_CHART_DELIMITER
, //59
486 INS_PROP_CAP_OBJECT_CHART_LEVEL
, //60
487 INS_PROP_CAP_OBJECT_CHART_POSITION
, //61
488 INS_PROP_CAP_OBJECT_CHART_CHARACTERSTYLE
, //62
489 INS_PROP_CAP_OBJECT_CHART_APPLYATTRIBUTES
, //63
490 INS_PROP_CAP_OBJECT_FORMULA_ENABLE
, //64
491 INS_PROP_CAP_OBJECT_FORMULA_CATEGORY
, //65
492 INS_PROP_CAP_OBJECT_FORMULA_NUMBERING
, //66
493 INS_PROP_CAP_OBJECT_FORMULA_NUMBERINGSEPARATOR
, //67
494 INS_PROP_CAP_OBJECT_FORMULA_CAPTIONTEXT
, //68
495 INS_PROP_CAP_OBJECT_FORMULA_DELIMITER
, //69
496 INS_PROP_CAP_OBJECT_FORMULA_LEVEL
, //70
497 INS_PROP_CAP_OBJECT_FORMULA_POSITION
, //71
498 INS_PROP_CAP_OBJECT_FORMULA_CHARACTERSTYLE
, //72
499 INS_PROP_CAP_OBJECT_FORMULA_APPLYATTRIBUTES
, //73
500 INS_PROP_CAP_OBJECT_DRAW_ENABLE
, //74
501 INS_PROP_CAP_OBJECT_DRAW_CATEGORY
, //75
502 INS_PROP_CAP_OBJECT_DRAW_NUMBERING
, //76
503 INS_PROP_CAP_OBJECT_DRAW_NUMBERINGSEPARATOR
, //77
504 INS_PROP_CAP_OBJECT_DRAW_CAPTIONTEXT
, //78
505 INS_PROP_CAP_OBJECT_DRAW_DELIMITER
, //79
506 INS_PROP_CAP_OBJECT_DRAW_LEVEL
, //80
507 INS_PROP_CAP_OBJECT_DRAW_POSITION
, //81
508 INS_PROP_CAP_OBJECT_DRAW_CHARACTERSTYLE
, //82
509 INS_PROP_CAP_OBJECT_DRAW_APPLYATTRIBUTES
, //83
510 INS_PROP_CAP_OBJECT_OLEMISC_ENABLE
, //84
511 INS_PROP_CAP_OBJECT_OLEMISC_CATEGORY
, //85
512 INS_PROP_CAP_OBJECT_OLEMISC_NUMBERING
, //86
513 INS_PROP_CAP_OBJECT_OLEMISC_NUMBERINGSEPARATOR
, //87
514 INS_PROP_CAP_OBJECT_OLEMISC_CAPTIONTEXT
, //88
515 INS_PROP_CAP_OBJECT_OLEMISC_DELIMITER
, //89
516 INS_PROP_CAP_OBJECT_OLEMISC_LEVEL
, //90
517 INS_PROP_CAP_OBJECT_OLEMISC_POSITION
, //91
518 INS_PROP_CAP_OBJECT_OLEMISC_CHARACTERSTYLE
, //92
519 INS_PROP_CAP_OBJECT_OLEMISC_APPLYATTRIBUTES
//93
521 const Sequence
<OUString
>& SwInsertConfig::GetPropertyNames()
523 static Sequence
<OUString
> aNames
;
524 static Sequence
<OUString
> aWebNames
;
525 if(!aNames
.getLength())
527 static const char* aPropNames
[] =
530 "Table/RepeatHeader", // 1
532 "Table/Split", // 3 from here not in writer/web
533 "Caption/Automatic", // 4
534 "Caption/CaptionOrderNumberingFirst", // 5
535 "Caption/WriterObject/Table/Enable", // 6
536 "Caption/WriterObject/Table/Settings/Category", // 7
537 "Caption/WriterObject/Table/Settings/Numbering", // 8
538 "Caption/WriterObject/Table/Settings/NumberingSeparator", // 9
539 "Caption/WriterObject/Table/Settings/CaptionText", //10
540 "Caption/WriterObject/Table/Settings/Delimiter", //11
541 "Caption/WriterObject/Table/Settings/Level", //12
542 "Caption/WriterObject/Table/Settings/Position", //13
543 "Caption/WriterObject/Table/Settings/CharacterStyle", //14
544 "Caption/WriterObject/Frame/Enable", //15
545 "Caption/WriterObject/Frame/Settings/Category", //16
546 "Caption/WriterObject/Frame/Settings/Numbering", //17
547 "Caption/WriterObject/Frame/Settings/NumberingSeparator", //18
548 "Caption/WriterObject/Frame/Settings/CaptionText", //19
549 "Caption/WriterObject/Frame/Settings/Delimiter", //20
550 "Caption/WriterObject/Frame/Settings/Level", //21
551 "Caption/WriterObject/Frame/Settings/Position", //22
552 "Caption/WriterObject/Frame/Settings/CharacterStyle", //23
553 "Caption/WriterObject/Graphic/Enable", //24
554 "Caption/WriterObject/Graphic/Settings/Category", //25
555 "Caption/WriterObject/Graphic/Settings/Numbering", //26
556 "Caption/WriterObject/Graphic/Settings/NumberingSeparator", //27
557 "Caption/WriterObject/Graphic/Settings/CaptionText", //28
558 "Caption/WriterObject/Graphic/Settings/Delimiter", //29
559 "Caption/WriterObject/Graphic/Settings/Level", //30
560 "Caption/WriterObject/Graphic/Settings/Position", //31
561 "Caption/WriterObject/Graphic/Settings/CharacterStyle", //32
562 "Caption/WriterObject/Graphic/Settings/ApplyAttributes", //33
563 "Caption/OfficeObject/Calc/Enable", //34
564 "Caption/OfficeObject/Calc/Settings/Category", //35
565 "Caption/OfficeObject/Calc/Settings/Numbering", //36
566 "Caption/OfficeObject/Calc/Settings/NumberingSeparator", //37
567 "Caption/OfficeObject/Calc/Settings/CaptionText", //38
568 "Caption/OfficeObject/Calc/Settings/Delimiter", //39
569 "Caption/OfficeObject/Calc/Settings/Level", //40
570 "Caption/OfficeObject/Calc/Settings/Position", //41
571 "Caption/OfficeObject/Calc/Settings/CharacterStyle", //42
572 "Caption/OfficeObject/Calc/Settings/ApplyAttributes", //43
573 "Caption/OfficeObject/Impress/Enable", //44
574 "Caption/OfficeObject/Impress/Settings/Category", //45
575 "Caption/OfficeObject/Impress/Settings/Numbering", //46
576 "Caption/OfficeObject/Impress/Settings/NumberingSeparator", //47
577 "Caption/OfficeObject/Impress/Settings/CaptionText", //48
578 "Caption/OfficeObject/Impress/Settings/Delimiter", //49
579 "Caption/OfficeObject/Impress/Settings/Level", //50
580 "Caption/OfficeObject/Impress/Settings/Position", //51
581 "Caption/OfficeObject/Impress/Settings/CharacterStyle", //52
582 "Caption/OfficeObject/Impress/Settings/ApplyAttributes", //53
583 "Caption/OfficeObject/Chart/Enable", //54
584 "Caption/OfficeObject/Chart/Settings/Category", //55
585 "Caption/OfficeObject/Chart/Settings/Numbering", //56
586 "Caption/OfficeObject/Chart/Settings/NumberingSeparator", //57
587 "Caption/OfficeObject/Chart/Settings/CaptionText", //58
588 "Caption/OfficeObject/Chart/Settings/Delimiter", //59
589 "Caption/OfficeObject/Chart/Settings/Level", //60
590 "Caption/OfficeObject/Chart/Settings/Position", //61
591 "Caption/OfficeObject/Chart/Settings/CharacterStyle", //62
592 "Caption/OfficeObject/Chart/Settings/ApplyAttributes", //63
593 "Caption/OfficeObject/Formula/Enable", //64
594 "Caption/OfficeObject/Formula/Settings/Category", //65
595 "Caption/OfficeObject/Formula/Settings/Numbering", //66
596 "Caption/OfficeObject/Formula/Settings/NumberingSeparator", //67
597 "Caption/OfficeObject/Formula/Settings/CaptionText", //68
598 "Caption/OfficeObject/Formula/Settings/Delimiter", //69
599 "Caption/OfficeObject/Formula/Settings/Level", //70
600 "Caption/OfficeObject/Formula/Settings/Position", //71
601 "Caption/OfficeObject/Formula/Settings/CharacterStyle", //72
602 "Caption/OfficeObject/Formula/Settings/ApplyAttributes", //73
603 "Caption/OfficeObject/Draw/Enable", //74
604 "Caption/OfficeObject/Draw/Settings/Category", //75
605 "Caption/OfficeObject/Draw/Settings/Numbering", //76
606 "Caption/OfficeObject/Draw/Settings/NumberingSeparator", //77
607 "Caption/OfficeObject/Draw/Settings/CaptionText", //78
608 "Caption/OfficeObject/Draw/Settings/Delimiter", //79
609 "Caption/OfficeObject/Draw/Settings/Level", //80
610 "Caption/OfficeObject/Draw/Settings/Position", //81
611 "Caption/OfficeObject/Draw/Settings/CharacterStyle", //82
612 "Caption/OfficeObject/Draw/Settings/ApplyAttributes", //83
613 "Caption/OfficeObject/OLEMisc/Enable", //84
614 "Caption/OfficeObject/OLEMisc/Settings/Category", //85
615 "Caption/OfficeObject/OLEMisc/Settings/Numbering", //86
616 "Caption/OfficeObject/OLEMisc/Settings/NumberingSeparator", //87
617 "Caption/OfficeObject/OLEMisc/Settings/CaptionText", //88
618 "Caption/OfficeObject/OLEMisc/Settings/Delimiter", //89
619 "Caption/OfficeObject/OLEMisc/Settings/Level", //90
620 "Caption/OfficeObject/OLEMisc/Settings/Position", //91
621 "Caption/OfficeObject/OLEMisc/Settings/CharacterStyle", //92
622 "Caption/OfficeObject/OLEMisc/Settings/ApplyAttributes" //93
624 const int nCount
= INS_PROP_CAP_OBJECT_OLEMISC_APPLYATTRIBUTES
+ 1;
625 const int nWebCount
= INS_PROP_TABLE_BORDER
+ 1;
626 aNames
.realloc(nCount
);
627 aWebNames
.realloc(nWebCount
);
628 OUString
* pNames
= aNames
.getArray();
629 OUString
* pWebNames
= aWebNames
.getArray();
631 for(i
= 0; i
< nCount
; i
++)
632 pNames
[i
] = C2U(aPropNames
[i
]);
633 for(i
= 0; i
< nWebCount
; i
++)
634 pWebNames
[i
] = C2U(aPropNames
[i
]);
636 return bIsWeb
? aWebNames
: aNames
;
638 /*-- 10.10.00 16:22:22---------------------------------------------------
640 -----------------------------------------------------------------------*/
641 SwInsertConfig::SwInsertConfig(sal_Bool bWeb
) :
642 ConfigItem(bWeb
? C2U("Office.WriterWeb/Insert") : C2U("Office.Writer/Insert"),
643 CONFIG_MODE_DELAYED_UPDATE
|CONFIG_MODE_RELEASE_TREE
),
646 bInsWithCaption( sal_False
),
647 bCaptionOrderNumberingFirst( sal_False
),
651 aGlobalNames
[GLOB_NAME_CALC
] = SvGlobalName(SO3_SC_CLASSID
);
652 aGlobalNames
[GLOB_NAME_IMPRESS
] = SvGlobalName(SO3_SIMPRESS_CLASSID
);
653 aGlobalNames
[GLOB_NAME_DRAW
] = SvGlobalName(SO3_SDRAW_CLASSID
);
654 aGlobalNames
[GLOB_NAME_MATH
] = SvGlobalName(SO3_SM_CLASSID
);
655 aGlobalNames
[GLOB_NAME_CHART
] = SvGlobalName(SO3_SCH_CLASSID
);
657 pCapOptions
= new InsCaptionOptArr
;
661 /*-- 10.10.00 16:22:23---------------------------------------------------
663 -----------------------------------------------------------------------*/
664 SwInsertConfig::~SwInsertConfig()
669 /*-- 10.10.00 16:22:56---------------------------------------------------
671 -----------------------------------------------------------------------*/
672 void lcl_WriteOpt(const InsCaptionOpt
& rOpt
, Any
* pValues
, sal_Int32 nProp
, sal_Int32 nOffset
)
678 sal_Bool bTemp
= rOpt
.UseCaption();
679 pValues
[nProp
].setValue(&bTemp
, ::getBooleanCppuType());
682 case 1: pValues
[nProp
] <<= OUString(rOpt
.GetCategory()); break;//Category
683 case 2: pValues
[nProp
] <<= (sal_Int32
)rOpt
.GetNumType(); break;//Numbering",
684 case 3: pValues
[nProp
] <<= rOpt
.GetNumSeparator(); break;//NumberingSeparator",
685 case 4: pValues
[nProp
] <<= OUString(rOpt
.GetCaption()); break;//CaptionText",
686 case 5: pValues
[nProp
] <<= OUString(rOpt
.GetSeparator());break;//Delimiter",
687 case 6: pValues
[nProp
] <<= (sal_Int32
)rOpt
.GetLevel(); break;//Level",
688 case 7: pValues
[nProp
] <<= (sal_Int32
)rOpt
.GetPos(); break;//Position",
689 case 8: pValues
[nProp
] <<= (::rtl::OUString
&)rOpt
.GetCharacterStyle(); break; //CharacterStyle
690 case 9: pValues
[nProp
] <<= rOpt
.CopyAttributes(); break; //ApplyAttributes
693 //-----------------------------------------------------------------------------
694 void SwInsertConfig::Commit()
696 const Sequence
<OUString
>& aNames
= GetPropertyNames();
697 Sequence
<Any
> aValues(aNames
.getLength());
698 Any
* pValues
= aValues
.getArray();
700 const Type
& rType
= ::getBooleanCppuType();
701 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
703 const InsCaptionOpt
* pWriterTableOpt
= 0;
704 const InsCaptionOpt
* pWriterFrameOpt
= 0;
705 const InsCaptionOpt
* pWriterGraphicOpt
= 0;
706 const InsCaptionOpt
* pOLECalcOpt
= 0;
707 const InsCaptionOpt
* pOLEImpressOpt
= 0;
708 const InsCaptionOpt
* pOLEChartOpt
= 0;
709 const InsCaptionOpt
* pOLEFormulaOpt
= 0;
710 const InsCaptionOpt
* pOLEDrawOpt
= 0;
713 pWriterTableOpt
= pCapOptions
->Find(TABLE_CAP
, 0);
714 pWriterFrameOpt
= pCapOptions
->Find(FRAME_CAP
, 0);
715 pWriterGraphicOpt
= pCapOptions
->Find(GRAPHIC_CAP
, 0);
716 pOLECalcOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CALC
]);
717 pOLEImpressOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_IMPRESS
]);
718 pOLEDrawOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_DRAW
]);
719 pOLEFormulaOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_MATH
]);
720 pOLEChartOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CHART
]);
724 case INS_PROP_TABLE_HEADER
:
726 sal_Bool bVal
= 0 !=(aInsTblOpts
.mnInsMode
& tabopts::HEADLINE
); pValues
[nProp
].setValue(&bVal
, rType
);
728 break;//"Table/Header",
729 case INS_PROP_TABLE_REPEATHEADER
:
731 sal_Bool bVal
= (aInsTblOpts
.mnRowsToRepeat
>0); pValues
[nProp
].setValue(&bVal
, rType
);
733 break;//"Table/RepeatHeader",
734 case INS_PROP_TABLE_BORDER
:
736 sal_Bool bVal
= 0 !=(aInsTblOpts
.mnInsMode
& tabopts::DEFAULT_BORDER
); pValues
[nProp
].setValue(&bVal
, rType
);
738 break;//"Table/Border",
739 case INS_PROP_TABLE_SPLIT
:
741 sal_Bool bVal
= 0 !=(aInsTblOpts
.mnInsMode
& tabopts::SPLIT_LAYOUT
); pValues
[nProp
].setValue(&bVal
, rType
);
743 break;//"Table/Split",
744 case INS_PROP_CAP_AUTOMATIC
: pValues
[nProp
].setValue(&bInsWithCaption
, rType
);break;//"Caption/Automatic",
745 case INS_PROP_CAP_CAPTIONORDERNUMBERINGFIRST
:
746 pValues
[nProp
] <<= bCaptionOrderNumberingFirst
;
747 break;//"Caption/CaptionOrderNumberingFirst"
749 case INS_PROP_CAP_OBJECT_TABLE_ENABLE
:
750 case INS_PROP_CAP_OBJECT_TABLE_CATEGORY
:
751 case INS_PROP_CAP_OBJECT_TABLE_NUMBERING
:
752 case INS_PROP_CAP_OBJECT_TABLE_NUMBERINGSEPARATOR
:
753 case INS_PROP_CAP_OBJECT_TABLE_CAPTIONTEXT
:
754 case INS_PROP_CAP_OBJECT_TABLE_DELIMITER
:
755 case INS_PROP_CAP_OBJECT_TABLE_LEVEL
:
756 case INS_PROP_CAP_OBJECT_TABLE_POSITION
:
757 case INS_PROP_CAP_OBJECT_TABLE_CHARACTERSTYLE
:
759 lcl_WriteOpt(*pWriterTableOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_TABLE_ENABLE
);
761 case INS_PROP_CAP_OBJECT_FRAME_ENABLE
:
762 case INS_PROP_CAP_OBJECT_FRAME_CATEGORY
:
763 case INS_PROP_CAP_OBJECT_FRAME_NUMBERING
:
764 case INS_PROP_CAP_OBJECT_FRAME_NUMBERINGSEPARATOR
:
765 case INS_PROP_CAP_OBJECT_FRAME_CAPTIONTEXT
:
766 case INS_PROP_CAP_OBJECT_FRAME_DELIMITER
:
767 case INS_PROP_CAP_OBJECT_FRAME_LEVEL
:
768 case INS_PROP_CAP_OBJECT_FRAME_POSITION
:
769 case INS_PROP_CAP_OBJECT_FRAME_CHARACTERSTYLE
:
771 lcl_WriteOpt(*pWriterFrameOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_FRAME_ENABLE
);
773 case INS_PROP_CAP_OBJECT_GRAPHIC_ENABLE
:
774 case INS_PROP_CAP_OBJECT_GRAPHIC_CATEGORY
:
775 case INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERING
:
776 case INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERINGSEPARATOR
:
777 case INS_PROP_CAP_OBJECT_GRAPHIC_CAPTIONTEXT
:
778 case INS_PROP_CAP_OBJECT_GRAPHIC_DELIMITER
:
779 case INS_PROP_CAP_OBJECT_GRAPHIC_LEVEL
:
780 case INS_PROP_CAP_OBJECT_GRAPHIC_POSITION
:
781 case INS_PROP_CAP_OBJECT_GRAPHIC_CHARACTERSTYLE
:
782 case INS_PROP_CAP_OBJECT_GRAPHIC_APPLYATTRIBUTES
:
783 if(pWriterGraphicOpt
)
784 lcl_WriteOpt(*pWriterGraphicOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_GRAPHIC_ENABLE
);
786 case INS_PROP_CAP_OBJECT_CALC_ENABLE
:
787 case INS_PROP_CAP_OBJECT_CALC_CATEGORY
:
788 case INS_PROP_CAP_OBJECT_CALC_NUMBERING
:
789 case INS_PROP_CAP_OBJECT_CALC_NUMBERINGSEPARATOR
:
790 case INS_PROP_CAP_OBJECT_CALC_CAPTIONTEXT
:
791 case INS_PROP_CAP_OBJECT_CALC_DELIMITER
:
792 case INS_PROP_CAP_OBJECT_CALC_LEVEL
:
793 case INS_PROP_CAP_OBJECT_CALC_POSITION
:
794 case INS_PROP_CAP_OBJECT_CALC_CHARACTERSTYLE
:
795 case INS_PROP_CAP_OBJECT_CALC_APPLYATTRIBUTES
:
797 lcl_WriteOpt(*pOLECalcOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_CALC_ENABLE
);
799 case INS_PROP_CAP_OBJECT_IMPRESS_ENABLE
:
800 case INS_PROP_CAP_OBJECT_IMPRESS_CATEGORY
:
801 case INS_PROP_CAP_OBJECT_IMPRESS_NUMBERING
:
802 case INS_PROP_CAP_OBJECT_IMPRESS_NUMBERINGSEPARATOR
:
803 case INS_PROP_CAP_OBJECT_IMPRESS_CAPTIONTEXT
:
804 case INS_PROP_CAP_OBJECT_IMPRESS_DELIMITER
:
805 case INS_PROP_CAP_OBJECT_IMPRESS_LEVEL
:
806 case INS_PROP_CAP_OBJECT_IMPRESS_POSITION
:
807 case INS_PROP_CAP_OBJECT_IMPRESS_CHARACTERSTYLE
:
808 case INS_PROP_CAP_OBJECT_IMPRESS_APPLYATTRIBUTES
:
810 lcl_WriteOpt(*pOLEImpressOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_IMPRESS_ENABLE
);
812 case INS_PROP_CAP_OBJECT_CHART_ENABLE
:
813 case INS_PROP_CAP_OBJECT_CHART_CATEGORY
:
814 case INS_PROP_CAP_OBJECT_CHART_NUMBERING
:
815 case INS_PROP_CAP_OBJECT_CHART_NUMBERINGSEPARATOR
:
816 case INS_PROP_CAP_OBJECT_CHART_CAPTIONTEXT
:
817 case INS_PROP_CAP_OBJECT_CHART_DELIMITER
:
818 case INS_PROP_CAP_OBJECT_CHART_LEVEL
:
819 case INS_PROP_CAP_OBJECT_CHART_POSITION
:
820 case INS_PROP_CAP_OBJECT_CHART_CHARACTERSTYLE
:
821 case INS_PROP_CAP_OBJECT_CHART_APPLYATTRIBUTES
:
823 lcl_WriteOpt(*pOLEChartOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_CHART_ENABLE
);
825 case INS_PROP_CAP_OBJECT_FORMULA_ENABLE
:
826 case INS_PROP_CAP_OBJECT_FORMULA_CATEGORY
:
827 case INS_PROP_CAP_OBJECT_FORMULA_NUMBERING
:
828 case INS_PROP_CAP_OBJECT_FORMULA_NUMBERINGSEPARATOR
:
829 case INS_PROP_CAP_OBJECT_FORMULA_CAPTIONTEXT
:
830 case INS_PROP_CAP_OBJECT_FORMULA_DELIMITER
:
831 case INS_PROP_CAP_OBJECT_FORMULA_LEVEL
:
832 case INS_PROP_CAP_OBJECT_FORMULA_POSITION
:
833 case INS_PROP_CAP_OBJECT_FORMULA_CHARACTERSTYLE
:
834 case INS_PROP_CAP_OBJECT_FORMULA_APPLYATTRIBUTES
:
836 lcl_WriteOpt(*pOLEFormulaOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_FORMULA_ENABLE
);
838 case INS_PROP_CAP_OBJECT_DRAW_ENABLE
:
839 case INS_PROP_CAP_OBJECT_DRAW_CATEGORY
:
840 case INS_PROP_CAP_OBJECT_DRAW_NUMBERING
:
841 case INS_PROP_CAP_OBJECT_DRAW_NUMBERINGSEPARATOR
:
842 case INS_PROP_CAP_OBJECT_DRAW_CAPTIONTEXT
:
843 case INS_PROP_CAP_OBJECT_DRAW_DELIMITER
:
844 case INS_PROP_CAP_OBJECT_DRAW_LEVEL
:
845 case INS_PROP_CAP_OBJECT_DRAW_POSITION
:
846 case INS_PROP_CAP_OBJECT_DRAW_CHARACTERSTYLE
:
847 case INS_PROP_CAP_OBJECT_DRAW_APPLYATTRIBUTES
:
849 lcl_WriteOpt(*pOLEDrawOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_DRAW_ENABLE
);
851 case INS_PROP_CAP_OBJECT_OLEMISC_ENABLE
:
852 case INS_PROP_CAP_OBJECT_OLEMISC_CATEGORY
:
853 case INS_PROP_CAP_OBJECT_OLEMISC_NUMBERING
:
854 case INS_PROP_CAP_OBJECT_OLEMISC_NUMBERINGSEPARATOR
:
855 case INS_PROP_CAP_OBJECT_OLEMISC_CAPTIONTEXT
:
856 case INS_PROP_CAP_OBJECT_OLEMISC_DELIMITER
:
857 case INS_PROP_CAP_OBJECT_OLEMISC_LEVEL
:
858 case INS_PROP_CAP_OBJECT_OLEMISC_POSITION
:
859 case INS_PROP_CAP_OBJECT_OLEMISC_CHARACTERSTYLE
:
860 case INS_PROP_CAP_OBJECT_OLEMISC_APPLYATTRIBUTES
:
862 lcl_WriteOpt(*pOLEMiscOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_OLEMISC_ENABLE
);
867 PutProperties(aNames
, aValues
);
869 /*-- 10.10.00 16:22:56---------------------------------------------------
871 -----------------------------------------------------------------------*/
872 void lcl_ReadOpt(InsCaptionOpt
& rOpt
, const Any
* pValues
, sal_Int32 nProp
, sal_Int32 nOffset
)
877 rOpt
.UseCaption() = *(sal_Bool
*)pValues
[nProp
].getValue();
881 OUString sTemp
; pValues
[nProp
] >>= sTemp
;
882 rOpt
.SetCategory(sTemp
);
888 pValues
[nProp
] >>= nTemp
;
889 rOpt
.SetNumType(sal::static_int_cast
< sal_uInt16
, sal_Int32
>(nTemp
));
894 OUString sTemp
; pValues
[nProp
] >>= sTemp
;
895 rOpt
.SetNumSeparator(sTemp
);
897 break;//NumberingSeparator",
900 OUString sTemp
; pValues
[nProp
] >>= sTemp
;
901 rOpt
.SetCaption(sTemp
);
903 break;//CaptionText",
907 if(pValues
[nProp
] >>= sTemp
)
908 rOpt
.SetSeparator(sTemp
);
914 pValues
[nProp
] >>= nTemp
;
915 rOpt
.SetLevel(sal::static_int_cast
< sal_uInt16
, sal_Int32
>(nTemp
));
921 pValues
[nProp
] >>= nTemp
;
922 rOpt
.SetPos(sal::static_int_cast
< sal_uInt16
, sal_Int32
>(nTemp
));
925 case 8 : //CharacterStyle
927 ::rtl::OUString sTemp
; pValues
[nProp
] >>= sTemp
;
928 rOpt
.SetCharacterStyle( sTemp
);
931 case 9 : //ApplyAttributes
933 pValues
[nProp
] >>= rOpt
.CopyAttributes();
938 //-----------------------------------------------------------------------------
939 void SwInsertConfig::Load()
941 const Sequence
<OUString
>& aNames
= GetPropertyNames();
942 Sequence
<Any
> aValues
= GetProperties(aNames
);
943 const Any
* pValues
= aValues
.getConstArray();
944 DBG_ASSERT(aValues
.getLength() == aNames
.getLength(), "GetProperties failed");
945 if(aValues
.getLength() == aNames
.getLength())
947 InsCaptionOpt
* pWriterTableOpt
= 0;
948 InsCaptionOpt
* pWriterFrameOpt
= 0;
949 InsCaptionOpt
* pWriterGraphicOpt
= 0;
950 InsCaptionOpt
* pOLECalcOpt
= 0;
951 InsCaptionOpt
* pOLEImpressOpt
= 0;
952 InsCaptionOpt
* pOLEChartOpt
= 0;
953 InsCaptionOpt
* pOLEFormulaOpt
= 0;
954 InsCaptionOpt
* pOLEDrawOpt
= 0;
957 pWriterTableOpt
= pCapOptions
->Find(TABLE_CAP
, 0);
958 pWriterFrameOpt
= pCapOptions
->Find(FRAME_CAP
, 0);
959 pWriterGraphicOpt
= pCapOptions
->Find(GRAPHIC_CAP
, 0);
960 pOLECalcOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CALC
]);
961 pOLEImpressOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_IMPRESS
]);
962 pOLEDrawOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_DRAW
]);
963 pOLEFormulaOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_MATH
]);
964 pOLEChartOpt
= pCapOptions
->Find(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CHART
]);
969 USHORT nInsTblFlags
= 0;
970 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
972 if(pValues
[nProp
].hasValue())
974 sal_Bool bBool
= nProp
< INS_PROP_CAP_OBJECT_TABLE_ENABLE
? *(sal_Bool
*)pValues
[nProp
].getValue() : sal_False
;
977 case INS_PROP_TABLE_HEADER
:
980 nInsTblFlags
|= tabopts::HEADLINE
;
982 break;//"Table/Header",
983 case INS_PROP_TABLE_REPEATHEADER
:
985 aInsTblOpts
.mnRowsToRepeat
= bBool
? 1 : 0;
988 break;//"Table/RepeatHeader",
989 case INS_PROP_TABLE_BORDER
:
992 nInsTblFlags
|= tabopts::DEFAULT_BORDER
;
994 break;//"Table/Border",
995 case INS_PROP_TABLE_SPLIT
:
998 nInsTblFlags
|= tabopts::SPLIT_LAYOUT
;
1000 break;//"Table/Split",
1001 case INS_PROP_CAP_AUTOMATIC
:
1002 bInsWithCaption
= bBool
;
1004 case INS_PROP_CAP_CAPTIONORDERNUMBERINGFIRST
: bCaptionOrderNumberingFirst
= bBool
; break;
1005 case INS_PROP_CAP_OBJECT_TABLE_ENABLE
:
1006 case INS_PROP_CAP_OBJECT_TABLE_CATEGORY
:
1007 case INS_PROP_CAP_OBJECT_TABLE_NUMBERING
:
1008 case INS_PROP_CAP_OBJECT_TABLE_NUMBERINGSEPARATOR
:
1009 case INS_PROP_CAP_OBJECT_TABLE_CAPTIONTEXT
:
1010 case INS_PROP_CAP_OBJECT_TABLE_DELIMITER
:
1011 case INS_PROP_CAP_OBJECT_TABLE_LEVEL
:
1012 case INS_PROP_CAP_OBJECT_TABLE_POSITION
:
1013 case INS_PROP_CAP_OBJECT_TABLE_CHARACTERSTYLE
:
1014 if(!pWriterTableOpt
)
1016 pWriterTableOpt
= new InsCaptionOpt(TABLE_CAP
);
1017 pCapOptions
->Insert(pWriterTableOpt
);
1019 lcl_ReadOpt(*pWriterTableOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_TABLE_ENABLE
);
1021 case INS_PROP_CAP_OBJECT_FRAME_ENABLE
:
1022 case INS_PROP_CAP_OBJECT_FRAME_CATEGORY
:
1023 case INS_PROP_CAP_OBJECT_FRAME_NUMBERING
:
1024 case INS_PROP_CAP_OBJECT_FRAME_NUMBERINGSEPARATOR
:
1025 case INS_PROP_CAP_OBJECT_FRAME_CAPTIONTEXT
:
1026 case INS_PROP_CAP_OBJECT_FRAME_DELIMITER
:
1027 case INS_PROP_CAP_OBJECT_FRAME_LEVEL
:
1028 case INS_PROP_CAP_OBJECT_FRAME_POSITION
:
1029 case INS_PROP_CAP_OBJECT_FRAME_CHARACTERSTYLE
:
1030 if(!pWriterFrameOpt
)
1032 pWriterFrameOpt
= new InsCaptionOpt(FRAME_CAP
);
1033 pCapOptions
->Insert(pWriterFrameOpt
);
1035 lcl_ReadOpt(*pWriterFrameOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_FRAME_ENABLE
);
1037 case INS_PROP_CAP_OBJECT_GRAPHIC_ENABLE
:
1038 case INS_PROP_CAP_OBJECT_GRAPHIC_CATEGORY
:
1039 case INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERING
:
1040 case INS_PROP_CAP_OBJECT_GRAPHIC_NUMBERINGSEPARATOR
:
1041 case INS_PROP_CAP_OBJECT_GRAPHIC_CAPTIONTEXT
:
1042 case INS_PROP_CAP_OBJECT_GRAPHIC_DELIMITER
:
1043 case INS_PROP_CAP_OBJECT_GRAPHIC_LEVEL
:
1044 case INS_PROP_CAP_OBJECT_GRAPHIC_POSITION
:
1045 case INS_PROP_CAP_OBJECT_GRAPHIC_CHARACTERSTYLE
:
1046 case INS_PROP_CAP_OBJECT_GRAPHIC_APPLYATTRIBUTES
:
1047 if(!pWriterGraphicOpt
)
1049 pWriterGraphicOpt
= new InsCaptionOpt(GRAPHIC_CAP
);
1050 pCapOptions
->Insert(pWriterGraphicOpt
);
1052 lcl_ReadOpt(*pWriterGraphicOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_GRAPHIC_ENABLE
);
1054 case INS_PROP_CAP_OBJECT_CALC_ENABLE
:
1055 case INS_PROP_CAP_OBJECT_CALC_CATEGORY
:
1056 case INS_PROP_CAP_OBJECT_CALC_NUMBERING
:
1057 case INS_PROP_CAP_OBJECT_CALC_NUMBERINGSEPARATOR
:
1058 case INS_PROP_CAP_OBJECT_CALC_CAPTIONTEXT
:
1059 case INS_PROP_CAP_OBJECT_CALC_DELIMITER
:
1060 case INS_PROP_CAP_OBJECT_CALC_LEVEL
:
1061 case INS_PROP_CAP_OBJECT_CALC_POSITION
:
1062 case INS_PROP_CAP_OBJECT_CALC_CHARACTERSTYLE
:
1063 case INS_PROP_CAP_OBJECT_CALC_APPLYATTRIBUTES
:
1066 pOLECalcOpt
= new InsCaptionOpt(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CALC
]);
1067 pCapOptions
->Insert(pOLECalcOpt
);
1069 lcl_ReadOpt(*pOLECalcOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_CALC_ENABLE
);
1071 case INS_PROP_CAP_OBJECT_IMPRESS_ENABLE
:
1072 case INS_PROP_CAP_OBJECT_IMPRESS_CATEGORY
:
1073 case INS_PROP_CAP_OBJECT_IMPRESS_NUMBERING
:
1074 case INS_PROP_CAP_OBJECT_IMPRESS_NUMBERINGSEPARATOR
:
1075 case INS_PROP_CAP_OBJECT_IMPRESS_CAPTIONTEXT
:
1076 case INS_PROP_CAP_OBJECT_IMPRESS_DELIMITER
:
1077 case INS_PROP_CAP_OBJECT_IMPRESS_LEVEL
:
1078 case INS_PROP_CAP_OBJECT_IMPRESS_POSITION
:
1079 case INS_PROP_CAP_OBJECT_IMPRESS_CHARACTERSTYLE
:
1080 case INS_PROP_CAP_OBJECT_IMPRESS_APPLYATTRIBUTES
:
1083 pOLEImpressOpt
= new InsCaptionOpt(OLE_CAP
, &aGlobalNames
[GLOB_NAME_IMPRESS
]);
1084 pCapOptions
->Insert(pOLEImpressOpt
);
1086 lcl_ReadOpt(*pOLEImpressOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_IMPRESS_ENABLE
);
1088 case INS_PROP_CAP_OBJECT_CHART_ENABLE
:
1089 case INS_PROP_CAP_OBJECT_CHART_CATEGORY
:
1090 case INS_PROP_CAP_OBJECT_CHART_NUMBERING
:
1091 case INS_PROP_CAP_OBJECT_CHART_NUMBERINGSEPARATOR
:
1092 case INS_PROP_CAP_OBJECT_CHART_CAPTIONTEXT
:
1093 case INS_PROP_CAP_OBJECT_CHART_DELIMITER
:
1094 case INS_PROP_CAP_OBJECT_CHART_LEVEL
:
1095 case INS_PROP_CAP_OBJECT_CHART_POSITION
:
1096 case INS_PROP_CAP_OBJECT_CHART_CHARACTERSTYLE
:
1097 case INS_PROP_CAP_OBJECT_CHART_APPLYATTRIBUTES
:
1100 pOLEChartOpt
= new InsCaptionOpt(OLE_CAP
, &aGlobalNames
[GLOB_NAME_CHART
]);
1101 pCapOptions
->Insert(pOLEChartOpt
);
1103 lcl_ReadOpt(*pOLEChartOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_CHART_ENABLE
);
1105 case INS_PROP_CAP_OBJECT_FORMULA_ENABLE
:
1106 case INS_PROP_CAP_OBJECT_FORMULA_CATEGORY
:
1107 case INS_PROP_CAP_OBJECT_FORMULA_NUMBERING
:
1108 case INS_PROP_CAP_OBJECT_FORMULA_NUMBERINGSEPARATOR
:
1109 case INS_PROP_CAP_OBJECT_FORMULA_CAPTIONTEXT
:
1110 case INS_PROP_CAP_OBJECT_FORMULA_DELIMITER
:
1111 case INS_PROP_CAP_OBJECT_FORMULA_LEVEL
:
1112 case INS_PROP_CAP_OBJECT_FORMULA_POSITION
:
1113 case INS_PROP_CAP_OBJECT_FORMULA_CHARACTERSTYLE
:
1114 case INS_PROP_CAP_OBJECT_FORMULA_APPLYATTRIBUTES
:
1117 pOLEFormulaOpt
= new InsCaptionOpt(OLE_CAP
, &aGlobalNames
[GLOB_NAME_MATH
]);
1118 pCapOptions
->Insert(pOLEFormulaOpt
);
1120 lcl_ReadOpt(*pOLEFormulaOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_FORMULA_ENABLE
);
1122 case INS_PROP_CAP_OBJECT_DRAW_ENABLE
:
1123 case INS_PROP_CAP_OBJECT_DRAW_CATEGORY
:
1124 case INS_PROP_CAP_OBJECT_DRAW_NUMBERING
:
1125 case INS_PROP_CAP_OBJECT_DRAW_NUMBERINGSEPARATOR
:
1126 case INS_PROP_CAP_OBJECT_DRAW_CAPTIONTEXT
:
1127 case INS_PROP_CAP_OBJECT_DRAW_DELIMITER
:
1128 case INS_PROP_CAP_OBJECT_DRAW_LEVEL
:
1129 case INS_PROP_CAP_OBJECT_DRAW_POSITION
:
1130 case INS_PROP_CAP_OBJECT_DRAW_CHARACTERSTYLE
:
1131 case INS_PROP_CAP_OBJECT_DRAW_APPLYATTRIBUTES
:
1134 pOLEDrawOpt
= new InsCaptionOpt(OLE_CAP
, &aGlobalNames
[GLOB_NAME_DRAW
]);
1135 pCapOptions
->Insert(pOLEDrawOpt
);
1137 lcl_ReadOpt(*pOLEDrawOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_DRAW_ENABLE
);
1139 case INS_PROP_CAP_OBJECT_OLEMISC_ENABLE
:
1140 case INS_PROP_CAP_OBJECT_OLEMISC_CATEGORY
:
1141 case INS_PROP_CAP_OBJECT_OLEMISC_NUMBERING
:
1142 case INS_PROP_CAP_OBJECT_OLEMISC_NUMBERINGSEPARATOR
:
1143 case INS_PROP_CAP_OBJECT_OLEMISC_CAPTIONTEXT
:
1144 case INS_PROP_CAP_OBJECT_OLEMISC_DELIMITER
:
1145 case INS_PROP_CAP_OBJECT_OLEMISC_LEVEL
:
1146 case INS_PROP_CAP_OBJECT_OLEMISC_POSITION
:
1147 case INS_PROP_CAP_OBJECT_OLEMISC_CHARACTERSTYLE
:
1148 case INS_PROP_CAP_OBJECT_OLEMISC_APPLYATTRIBUTES
:
1151 pOLEMiscOpt
= new InsCaptionOpt(OLE_CAP
);
1153 lcl_ReadOpt(*pOLEMiscOpt
, pValues
, nProp
, nProp
- INS_PROP_CAP_OBJECT_OLEMISC_ENABLE
);
1157 else if(nProp
== INS_PROP_CAP_CAPTIONORDERNUMBERINGFIRST
)
1159 //#i61007# initialize caption order, right now only HUNGARIAN seems to need a different order
1160 SvtSysLocaleOptions aSysLocaleOptions
;
1161 OUString sLang
= aSysLocaleOptions
.GetLocaleConfigString();
1162 bCaptionOrderNumberingFirst
= ( sLang
.getLength() && sLang
.matchAsciiL( "hu", 2 )) ? sal_True
: sal_False
;
1166 aInsTblOpts
.mnInsMode
= nInsTblFlags
;
1169 /* -----------------------------10.10.00 16:22--------------------------------
1171 ---------------------------------------------------------------------------*/
1172 const Sequence
<OUString
>& SwTableConfig::GetPropertyNames()
1174 const int nCount
= 8;
1175 static Sequence
<OUString
> aNames(nCount
);
1176 static const char* aPropNames
[] =
1179 "Shift/Column", // 1
1181 "Insert/Column", // 3
1182 "Change/Effect", // 4
1183 "Input/NumberRecognition", // 5
1184 "Input/NumberFormatRecognition",// 6
1185 "Input/Alignment" // 7
1187 OUString
* pNames
= aNames
.getArray();
1188 for(int i
= 0; i
< nCount
; i
++)
1189 pNames
[i
] = OUString::createFromAscii(aPropNames
[i
]);
1192 /*-- 10.10.00 16:22:22---------------------------------------------------
1194 -----------------------------------------------------------------------*/
1195 SwTableConfig::SwTableConfig(sal_Bool bWeb
) :
1196 ConfigItem(bWeb
? C2U("Office.WriterWeb/Table") : C2U("Office.Writer/Table"),
1197 CONFIG_MODE_DELAYED_UPDATE
|CONFIG_MODE_RELEASE_TREE
)
1201 /*-- 10.10.00 16:22:23---------------------------------------------------
1203 -----------------------------------------------------------------------*/
1204 SwTableConfig::~SwTableConfig()
1207 /*-- 10.10.00 16:22:56---------------------------------------------------
1209 -----------------------------------------------------------------------*/
1210 void SwTableConfig::Commit()
1212 const Sequence
<OUString
>& aNames
= GetPropertyNames();
1213 Sequence
<Any
> aValues(aNames
.getLength());
1214 Any
* pValues
= aValues
.getArray();
1216 const Type
& rType
= ::getBooleanCppuType();
1217 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
1221 case 0 : pValues
[nProp
] <<= (sal_Int32
)TWIP_TO_MM100_UNSIGNED(nTblHMove
); break; //"Shift/Row",
1222 case 1 : pValues
[nProp
] <<= (sal_Int32
)TWIP_TO_MM100_UNSIGNED(nTblVMove
); break; //"Shift/Column",
1223 case 2 : pValues
[nProp
] <<= (sal_Int32
)TWIP_TO_MM100_UNSIGNED(nTblHInsert
); break; //"Insert/Row",
1224 case 3 : pValues
[nProp
] <<= (sal_Int32
)TWIP_TO_MM100_UNSIGNED(nTblVInsert
); break; //"Insert/Column",
1225 case 4 : pValues
[nProp
] <<= (sal_Int32
)eTblChgMode
; break; //"Change/Effect",
1226 case 5 : pValues
[nProp
].setValue(&bInsTblFormatNum
, rType
); break; //"Input/NumberRecognition",
1227 case 6 : pValues
[nProp
].setValue(&bInsTblChangeNumFormat
, rType
); break; //"Input/NumberFormatRecognition",
1228 case 7 : pValues
[nProp
].setValue(&bInsTblAlignNum
, rType
); break; //"Input/Alignment"
1231 PutProperties(aNames
, aValues
);
1233 /*-- 10.10.00 16:22:56---------------------------------------------------
1235 -----------------------------------------------------------------------*/
1236 void SwTableConfig::Load()
1238 const Sequence
<OUString
>& aNames
= GetPropertyNames();
1239 Sequence
<Any
> aValues
= GetProperties(aNames
);
1240 const Any
* pValues
= aValues
.getConstArray();
1241 DBG_ASSERT(aValues
.getLength() == aNames
.getLength(), "GetProperties failed");
1242 if(aValues
.getLength() == aNames
.getLength())
1244 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
1246 if(pValues
[nProp
].hasValue())
1248 sal_Int32 nTemp
= 0;
1251 case 0 : pValues
[nProp
] >>= nTemp
; nTblHMove
= (USHORT
)MM100_TO_TWIP(nTemp
); break; //"Shift/Row",
1252 case 1 : pValues
[nProp
] >>= nTemp
; nTblVMove
= (USHORT
)MM100_TO_TWIP(nTemp
); break; //"Shift/Column",
1253 case 2 : pValues
[nProp
] >>= nTemp
; nTblHInsert
= (USHORT
)MM100_TO_TWIP(nTemp
); break; //"Insert/Row",
1254 case 3 : pValues
[nProp
] >>= nTemp
; nTblVInsert
= (USHORT
)MM100_TO_TWIP(nTemp
); break; //"Insert/Column",
1255 case 4 : pValues
[nProp
] >>= nTemp
; eTblChgMode
= (TblChgMode
)nTemp
; break; //"Change/Effect",
1256 case 5 : bInsTblFormatNum
= *(sal_Bool
*)pValues
[nProp
].getValue(); break; //"Input/NumberRecognition",
1257 case 6 : bInsTblChangeNumFormat
= *(sal_Bool
*)pValues
[nProp
].getValue(); break; //"Input/NumberFormatRecognition",
1258 case 7 : bInsTblAlignNum
= *(sal_Bool
*)pValues
[nProp
].getValue(); break; //"Input/Alignment"
1264 /*-- 18.01.01 17:02:47---------------------------------------------------
1266 -----------------------------------------------------------------------*/
1267 SwMiscConfig::SwMiscConfig() :
1268 ConfigItem(C2U("Office.Writer"),
1269 CONFIG_MODE_DELAYED_UPDATE
|CONFIG_MODE_RELEASE_TREE
),
1270 bDefaultFontsInCurrDocOnly(sal_False
),
1271 bShowIndexPreview(sal_False
),
1272 bGrfToGalleryAsLnk(sal_True
),
1273 bNumAlignSize(sal_True
),
1274 bSinglePrintJob(sal_False
),
1275 bIsNameFromColumn(sal_True
),
1276 bAskForMailMergeInPrint(sal_True
),
1281 /*-- 18.01.01 17:02:47---------------------------------------------------
1283 -----------------------------------------------------------------------*/
1284 SwMiscConfig::~SwMiscConfig()
1287 /*-- 18.01.01 17:02:47---------------------------------------------------
1289 -----------------------------------------------------------------------*/
1290 const Sequence
<OUString
>& SwMiscConfig::GetPropertyNames()
1292 static Sequence
<OUString
> aNames
;
1293 if(!aNames
.getLength())
1295 const int nCount
= 12;
1296 aNames
.realloc(nCount
);
1297 static const char* aPropNames
[] =
1299 "Statistics/WordNumber/Delimiter", // 0
1300 "DefaultFont/Document", // 1
1301 "Index/ShowPreview", // 2
1302 "Misc/GraphicToGalleryAsLink", // 3
1303 "Numbering/Graphic/KeepRatio", // 4
1304 "FormLetter/PrintOutput/SinglePrintJobs", // 5
1305 "FormLetter/MailingOutput/Format", // 6
1306 "FormLetter/FileOutput/FileName/FromDatabaseField", // 7
1307 "FormLetter/FileOutput/Path", // 8
1308 "FormLetter/FileOutput/FileName/FromManualSetting", // 9
1309 "FormLetter/FileOutput/FileName/Generation",//10
1310 "FormLetter/PrintOutput/AskForMerge" //11
1312 OUString
* pNames
= aNames
.getArray();
1313 for(int i
= 0; i
< nCount
; i
++)
1314 pNames
[i
] = C2U(aPropNames
[i
]);
1318 /*-- 18.01.01 17:02:47---------------------------------------------------
1320 -----------------------------------------------------------------------*/
1321 void SwMiscConfig::Commit()
1323 const Sequence
<OUString
>& aNames
= GetPropertyNames();
1324 Sequence
<Any
> aValues(aNames
.getLength());
1325 Any
* pValues
= aValues
.getArray();
1327 const Type
& rType
= ::getBooleanCppuType();
1328 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
1333 pValues
[nProp
] <<= OUString(
1334 SwModuleOptions::ConvertWordDelimiter(sWordDelimiter
, sal_False
));
1336 case 1 : pValues
[nProp
].setValue(&bDefaultFontsInCurrDocOnly
, rType
); break;
1337 case 2 : pValues
[nProp
].setValue(&bShowIndexPreview
, rType
) ; break;
1338 case 3 : pValues
[nProp
].setValue(&bGrfToGalleryAsLnk
, rType
); break;
1339 case 4 : pValues
[nProp
].setValue(&bNumAlignSize
, rType
); break;
1340 case 5 : pValues
[nProp
].setValue(&bSinglePrintJob
, rType
); break;
1341 case 6 : pValues
[nProp
] <<= nMailingFormats
; break;
1342 case 7 : pValues
[nProp
] <<= OUString(sNameFromColumn
); break;
1343 case 8 : pValues
[nProp
] <<= OUString(sMailingPath
); break;
1344 case 9 : pValues
[nProp
] <<= OUString(sMailName
); break;
1345 case 10: pValues
[nProp
].setValue(&bIsNameFromColumn
, rType
);break;
1346 case 11: pValues
[nProp
] <<= bAskForMailMergeInPrint
; break;
1349 PutProperties(aNames
, aValues
);
1351 /*-- 18.01.01 17:02:48---------------------------------------------------
1353 -----------------------------------------------------------------------*/
1354 void SwMiscConfig::Load()
1356 const Sequence
<OUString
>& aNames
= GetPropertyNames();
1357 Sequence
<Any
> aValues
= GetProperties(aNames
);
1358 const Any
* pValues
= aValues
.getConstArray();
1359 DBG_ASSERT(aValues
.getLength() == aNames
.getLength(), "GetProperties failed");
1360 if(aValues
.getLength() == aNames
.getLength())
1363 for(int nProp
= 0; nProp
< aNames
.getLength(); nProp
++)
1365 if(pValues
[nProp
].hasValue())
1369 case 0 : pValues
[nProp
] >>= sTmp
;
1370 sWordDelimiter
= SwModuleOptions::ConvertWordDelimiter(sTmp
, sal_True
);
1372 case 1 : bDefaultFontsInCurrDocOnly
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1373 case 2 : bShowIndexPreview
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1374 case 3 : bGrfToGalleryAsLnk
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1375 case 4 : bNumAlignSize
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1376 case 5 : bSinglePrintJob
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1377 case 6 : pValues
[nProp
] >>= nMailingFormats
; ; break;
1378 case 7 : pValues
[nProp
] >>= sTmp
; sNameFromColumn
= sTmp
; break;
1379 case 8 : pValues
[nProp
] >>= sTmp
; sMailingPath
= sTmp
; break;
1380 case 9 : pValues
[nProp
] >>= sTmp
; sMailName
= sTmp
; break;
1381 case 10: bIsNameFromColumn
= *(sal_Bool
*)pValues
[nProp
].getValue(); break;
1382 case 11: pValues
[nProp
] >>= bAskForMailMergeInPrint
; break;