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 <i18nutil/unicode.hxx>
21 : #include <svl/itemiter.hxx>
22 : #include <vcl/svapp.hxx>
23 : #include <vcl/settings.hxx>
24 :
25 : #include <editeng/itemtype.hxx>
26 : #include <svtools/grfmgr.hxx>
27 : #include <unotools/intlwrapper.hxx>
28 : #include <comphelper/processfactory.hxx>
29 : #include <rtl/ustrbuf.hxx>
30 : #include <fmtanchr.hxx>
31 : #include <fmtfsize.hxx>
32 : #include <fmtinfmt.hxx>
33 : #include <fchrfmt.hxx>
34 : #include <fmtautofmt.hxx>
35 : #include <fmtsrnd.hxx>
36 : #include <fmtornt.hxx>
37 : #include <fmtlsplt.hxx>
38 : #include <fmtrowsplt.hxx>
39 : #include <fmtpdsc.hxx>
40 : #include <fmtclds.hxx>
41 : #include <fmteiro.hxx>
42 : #include <fmturl.hxx>
43 : #include <fmthdft.hxx>
44 : #include <fmtcnct.hxx>
45 : #include <fmtline.hxx>
46 : #include <tgrditem.hxx>
47 : #include <hfspacingitem.hxx>
48 : #include <fmtruby.hxx>
49 : #include <paratr.hxx>
50 : #include <grfatr.hxx>
51 : #include <pagedesc.hxx>
52 : #include <charfmt.hxx>
53 : #include <fmtcol.hxx>
54 : #include <tox.hxx>
55 : #include <attrdesc.hrc>
56 : #include <fmtftntx.hxx>
57 : #include <fmtfollowtextflow.hxx>
58 : #include <libxml/xmlwriter.h>
59 :
60 : using namespace com::sun::star;
61 :
62 14730 : TYPEINIT2(SwFormatCharFormat,SfxPoolItem,SwClient);
63 :
64 : // query the attribute descriptions
65 0 : void SwAttrSet::GetPresentation(
66 : SfxItemPresentation ePres,
67 : SfxMapUnit eCoreMetric,
68 : SfxMapUnit ePresMetric,
69 : OUString &rText ) const
70 : {
71 : static sal_Char const sComma[] = ", ";
72 :
73 0 : rText.clear();
74 0 : OUString aStr;
75 0 : if( Count() )
76 : {
77 0 : SfxItemIter aIter( *this );
78 : const IntlWrapper rInt( ::comphelper::getProcessComponentContext(),
79 0 : GetAppLanguageTag() );
80 : while( true )
81 : {
82 0 : aIter.GetCurItem()->GetPresentation( ePres, eCoreMetric,
83 : ePresMetric, aStr,
84 0 : &rInt );
85 0 : if( rText.getLength() && aStr.getLength() )
86 0 : rText += OUString(sComma);
87 0 : rText += aStr;
88 0 : if( aIter.IsAtEnd() )
89 0 : break;
90 0 : aIter.NextItem();
91 0 : }
92 0 : }
93 0 : }
94 :
95 0 : bool SwFormatCharFormat::GetPresentation
96 : (
97 : SfxItemPresentation ePres,
98 : SfxMapUnit eCoreUnit,
99 : SfxMapUnit ePresUnit,
100 : OUString& rText,
101 : const IntlWrapper* /*pIntl*/
102 : ) const
103 : {
104 0 : const SwCharFormat *pCharFormat = GetCharFormat();
105 0 : if ( pCharFormat )
106 : {
107 0 : OUString aStr;
108 0 : rText = OUString( SW_RESSTR( STR_CHARFMT ) );
109 0 : pCharFormat->GetPresentation( ePres, eCoreUnit, ePresUnit, aStr );
110 0 : rText = rText + "(" + aStr + ")";
111 : }
112 : else
113 0 : rText = OUString( SW_RESSTR( STR_NO_CHARFMT ) );
114 0 : return true;
115 : }
116 :
117 0 : bool SwFormatAutoFormat::GetPresentation
118 : (
119 : SfxItemPresentation /*ePres*/,
120 : SfxMapUnit /*eCoreUnit*/,
121 : SfxMapUnit /*ePresUnit*/,
122 : OUString& rText,
123 : const IntlWrapper* /*pIntl*/
124 : ) const
125 : {
126 0 : rText.clear(); //TODO
127 0 : return true;
128 : }
129 :
130 0 : bool SwFormatINetFormat::GetPresentation
131 : (
132 : SfxItemPresentation /*ePres*/,
133 : SfxMapUnit /*eCoreUnit*/,
134 : SfxMapUnit /*ePresUnit*/,
135 : OUString& rText,
136 : const IntlWrapper* /*pIntl*/
137 : ) const
138 : {
139 0 : rText = GetValue();
140 0 : return true;
141 : }
142 :
143 0 : bool SwFormatRuby::GetPresentation( SfxItemPresentation /*ePres*/,
144 : SfxMapUnit /*eCoreMetric*/, SfxMapUnit /*ePresMetric*/,
145 : OUString &rText, const IntlWrapper* /*pIntl*/ ) const
146 : {
147 0 : rText.clear();
148 0 : return true;
149 : }
150 :
151 0 : bool SwFormatDrop::GetPresentation
152 : (
153 : SfxItemPresentation /*ePres*/,
154 : SfxMapUnit /*eCoreUnit*/,
155 : SfxMapUnit /*ePresUnit*/,
156 : OUString& rText,
157 : const IntlWrapper* /*pIntl*/
158 : ) const
159 : {
160 0 : rText.clear();
161 0 : if ( GetLines() > 1 )
162 : {
163 0 : if ( GetChars() > 1 )
164 : {
165 0 : rText = OUString::number( GetChars() ) + " ";
166 : }
167 0 : rText = rText +
168 0 : OUString( SW_RESSTR( STR_DROP_OVER ) ) +
169 0 : " " +
170 0 : OUString::number( GetLines() ) +
171 0 : " " +
172 0 : OUString( SW_RESSTR( STR_DROP_LINES ) );
173 : }
174 : else
175 0 : rText = SW_RESSTR( STR_NO_DROP_LINES );
176 0 : return true;
177 : }
178 :
179 0 : bool SwRegisterItem::GetPresentation
180 : (
181 : SfxItemPresentation /*ePres*/,
182 : SfxMapUnit /*eCoreUnit*/,
183 : SfxMapUnit /*ePresUnit*/,
184 : OUString& rText,
185 : const IntlWrapper* /*pIntl*/
186 : ) const
187 : {
188 0 : const sal_uInt16 nId = GetValue() ? STR_REGISTER_ON : STR_REGISTER_OFF;
189 0 : rText = SW_RESSTR( nId );
190 0 : return true;
191 : }
192 :
193 0 : bool SwNumRuleItem::GetPresentation
194 : (
195 : SfxItemPresentation /*ePres*/,
196 : SfxMapUnit /*eCoreUnit*/,
197 : SfxMapUnit /*ePresUnit*/,
198 : OUString& rText,
199 : const IntlWrapper* /*pIntl*/
200 : ) const
201 : {
202 0 : if( !GetValue().isEmpty() )
203 0 : rText = SW_RESSTR( STR_NUMRULE_ON ) +
204 0 : "(" + GetValue() + ")";
205 : else
206 0 : rText = SW_RESSTR( STR_NUMRULE_OFF );
207 0 : return true;
208 : }
209 :
210 0 : bool SwParaConnectBorderItem::GetPresentation
211 : (
212 : SfxItemPresentation /*ePres*/,
213 : SfxMapUnit /*eCoreUnit*/,
214 : SfxMapUnit /*ePresUnit*/,
215 : OUString& rText,
216 : const IntlWrapper* /*pIntl*/
217 : ) const
218 : {
219 0 : const sal_uInt16 nId = GetValue() ? STR_CONNECT_BORDER_ON : STR_CONNECT_BORDER_OFF;
220 0 : rText = SW_RESSTR( nId );
221 0 : return true;
222 : }
223 :
224 : // Frame attribute
225 :
226 0 : bool SwFormatFrmSize::GetPresentation
227 : (
228 : SfxItemPresentation /*ePres*/,
229 : SfxMapUnit eCoreUnit,
230 : SfxMapUnit ePresUnit,
231 : OUString& rText,
232 : const IntlWrapper* pIntl
233 : ) const
234 : {
235 0 : rText = SW_RESSTR( STR_FRM_WIDTH ) + " ";
236 0 : if ( GetWidthPercent() )
237 : {
238 0 : rText = rText + unicode::formatPercent(GetWidthPercent(),
239 0 : Application::GetSettings().GetUILanguageTag());
240 : }
241 : else
242 : {
243 0 : rText = rText + ::GetMetricText( GetWidth(), eCoreUnit, ePresUnit, pIntl ) +
244 0 : " " + ::GetSvxString( ::GetMetricId( ePresUnit ) );
245 : }
246 0 : if ( ATT_VAR_SIZE != GetHeightSizeType() )
247 : {
248 0 : const sal_uInt16 nId = ATT_FIX_SIZE == m_eFrmHeightType ?
249 0 : STR_FRM_FIXEDHEIGHT : STR_FRM_MINHEIGHT;
250 0 : rText = rText + ", " + SW_RESSTR( nId ) + " ";
251 0 : if ( GetHeightPercent() )
252 : {
253 0 : rText = rText + unicode::formatPercent(GetHeightPercent(),
254 0 : Application::GetSettings().GetUILanguageTag());
255 : }
256 : else
257 : {
258 0 : rText = OUString( ::GetMetricText( GetHeight(), eCoreUnit, ePresUnit, pIntl ) ) +
259 0 : " " + ::GetSvxString( ::GetMetricId( ePresUnit ) );
260 : }
261 : }
262 0 : return true;
263 : }
264 :
265 : //Header for page formats.
266 : //Client of FrameFormat which describes the header.
267 :
268 0 : bool SwFormatHeader::GetPresentation
269 : (
270 : SfxItemPresentation /*ePres*/,
271 : SfxMapUnit /*eCoreUnit*/,
272 : SfxMapUnit /*ePresUnit*/,
273 : OUString& rText,
274 : const IntlWrapper* /*pIntl*/
275 : ) const
276 : {
277 0 : const sal_uInt16 nId = GetHeaderFormat() ? STR_HEADER : STR_NO_HEADER;
278 0 : rText = SW_RESSTR( nId );
279 0 : return true;
280 : }
281 :
282 : //Footer for page formats.
283 : //Client of FrameFormat which describes the footer.
284 :
285 0 : bool SwFormatFooter::GetPresentation
286 : (
287 : SfxItemPresentation /*ePres*/,
288 : SfxMapUnit /*eCoreUnit*/,
289 : SfxMapUnit /*ePresUnit*/,
290 : OUString& rText,
291 : const IntlWrapper* /*pIntl*/
292 : ) const
293 : {
294 0 : const sal_uInt16 nId = GetFooterFormat() ? STR_FOOTER : STR_NO_FOOTER;
295 0 : rText = SW_RESSTR( nId );
296 0 : return true;
297 : }
298 :
299 0 : bool SwFormatSurround::GetPresentation
300 : (
301 : SfxItemPresentation /*ePres*/,
302 : SfxMapUnit /*eCoreUnit*/,
303 : SfxMapUnit /*ePresUnit*/,
304 : OUString& rText,
305 : const IntlWrapper* /*pIntl*/
306 : ) const
307 : {
308 0 : sal_uInt16 nId = 0;
309 0 : switch ( (SwSurround)GetValue() )
310 : {
311 : case SURROUND_NONE:
312 0 : nId = STR_SURROUND_NONE;
313 0 : break;
314 : case SURROUND_THROUGHT:
315 0 : nId = STR_SURROUND_THROUGHT;
316 0 : break;
317 : case SURROUND_PARALLEL:
318 0 : nId = STR_SURROUND_PARALLEL;
319 0 : break;
320 : case SURROUND_IDEAL:
321 0 : nId = STR_SURROUND_IDEAL;
322 0 : break;
323 : case SURROUND_LEFT:
324 0 : nId = STR_SURROUND_LEFT;
325 0 : break;
326 : case SURROUND_RIGHT:
327 0 : nId = STR_SURROUND_RIGHT;
328 0 : break;
329 : default:;//prevent warning
330 : }
331 0 : if ( nId )
332 0 : rText = SW_RESSTR( nId );
333 :
334 0 : if ( IsAnchorOnly() )
335 : {
336 0 : rText = rText + " " + SW_RESSTR( STR_SURROUND_ANCHORONLY );
337 : }
338 0 : return true;
339 : }
340 :
341 : //VertOrientation, how and by what orientate the FlyFrm in the vertical?
342 :
343 0 : bool SwFormatVertOrient::GetPresentation
344 : (
345 : SfxItemPresentation /*ePres*/,
346 : SfxMapUnit eCoreUnit,
347 : SfxMapUnit ePresUnit,
348 : OUString& rText,
349 : const IntlWrapper* pIntl
350 : ) const
351 : {
352 0 : sal_uInt16 nId = 0;
353 0 : switch ( GetVertOrient() )
354 : {
355 : case text::VertOrientation::NONE:
356 : {
357 0 : rText = rText + SW_RESSTR( STR_POS_Y ) + " " +
358 0 : ::GetMetricText( GetPos(), eCoreUnit, ePresUnit, pIntl ) +
359 0 : " " + ::GetSvxString( ::GetMetricId( ePresUnit ) );
360 : }
361 0 : break;
362 : case text::VertOrientation::TOP:
363 0 : nId = STR_VERT_TOP;
364 0 : break;
365 : case text::VertOrientation::CENTER:
366 0 : nId = STR_VERT_CENTER;
367 0 : break;
368 : case text::VertOrientation::BOTTOM:
369 0 : nId = STR_VERT_BOTTOM;
370 0 : break;
371 : case text::VertOrientation::LINE_TOP:
372 0 : nId = STR_LINE_TOP;
373 0 : break;
374 : case text::VertOrientation::LINE_CENTER:
375 0 : nId = STR_LINE_CENTER;
376 0 : break;
377 : case text::VertOrientation::LINE_BOTTOM:
378 0 : nId = STR_LINE_BOTTOM;
379 0 : break;
380 : default:;//prevent warning
381 : }
382 0 : if ( nId )
383 0 : rText += SW_RESSTR( nId );
384 0 : return true;
385 : }
386 :
387 : //HoriOrientation, how and by what orientate the FlyFrm in the horizontal?
388 :
389 0 : bool SwFormatHoriOrient::GetPresentation
390 : (
391 : SfxItemPresentation /*ePres*/,
392 : SfxMapUnit eCoreUnit,
393 : SfxMapUnit ePresUnit,
394 : OUString& rText,
395 : const IntlWrapper* pIntl
396 : ) const
397 : {
398 0 : sal_uInt16 nId = 0;
399 0 : switch ( GetHoriOrient() )
400 : {
401 : case text::HoriOrientation::NONE:
402 : {
403 0 : rText = rText + SW_RESSTR( STR_POS_X ) + " " +
404 0 : ::GetMetricText( GetPos(), eCoreUnit, ePresUnit, pIntl ) +
405 0 : " " + ::GetSvxString( ::GetMetricId( ePresUnit ) );
406 : }
407 0 : break;
408 : case text::HoriOrientation::RIGHT:
409 0 : nId = STR_HORI_RIGHT;
410 0 : break;
411 : case text::HoriOrientation::CENTER:
412 0 : nId = STR_HORI_CENTER;
413 0 : break;
414 : case text::HoriOrientation::LEFT:
415 0 : nId = STR_HORI_LEFT;
416 0 : break;
417 : case text::HoriOrientation::INSIDE:
418 0 : nId = STR_HORI_INSIDE;
419 0 : break;
420 : case text::HoriOrientation::OUTSIDE:
421 0 : nId = STR_HORI_OUTSIDE;
422 0 : break;
423 : case text::HoriOrientation::FULL:
424 0 : nId = STR_HORI_FULL;
425 0 : break;
426 : default:;//prevent warning
427 : }
428 0 : if ( nId )
429 0 : rText += SW_RESSTR( nId );
430 0 : return true;
431 : }
432 :
433 : // FlyAnchor, Anchor of the free-flying frame
434 :
435 0 : bool SwFormatAnchor::GetPresentation
436 : (
437 : SfxItemPresentation /*ePres*/,
438 : SfxMapUnit /*eCoreUnit*/,
439 : SfxMapUnit /*ePresUnit*/,
440 : OUString& rText,
441 : const IntlWrapper* /*pIntl*/
442 : ) const
443 : {
444 0 : sal_uInt16 nId = 0;
445 0 : switch ( GetAnchorId() )
446 : {
447 : case FLY_AT_PARA:
448 0 : nId = STR_FLY_AT_PARA;
449 0 : break;
450 : case FLY_AS_CHAR:
451 0 : nId = STR_FLY_AS_CHAR;
452 0 : break;
453 : case FLY_AT_PAGE:
454 0 : nId = STR_FLY_AT_PAGE;
455 0 : break;
456 : default:;//prevent warning
457 : }
458 0 : if ( nId )
459 0 : rText += SW_RESSTR( nId );
460 0 : return true;
461 : }
462 :
463 0 : bool SwFormatPageDesc::GetPresentation
464 : (
465 : SfxItemPresentation /*ePres*/,
466 : SfxMapUnit /*eCoreUnit*/,
467 : SfxMapUnit /*ePresUnit*/,
468 : OUString& rText,
469 : const IntlWrapper* /*pIntl*/
470 : ) const
471 : {
472 0 : const SwPageDesc *pPageDesc = GetPageDesc();
473 0 : if ( pPageDesc )
474 0 : rText = pPageDesc->GetName();
475 : else
476 0 : rText = SW_RESSTR( STR_NO_PAGEDESC );
477 0 : return true;
478 : }
479 :
480 : //The ColumnDescriptor
481 :
482 0 : bool SwFormatCol::GetPresentation
483 : (
484 : SfxItemPresentation /*ePres*/,
485 : SfxMapUnit eCoreUnit,
486 : SfxMapUnit /*ePresUnit*/,
487 : OUString& rText,
488 : const IntlWrapper* pIntl
489 : ) const
490 : {
491 0 : sal_uInt16 nCnt = GetNumCols();
492 0 : if ( nCnt > 1 )
493 : {
494 0 : rText = OUString::number(nCnt) + " " + SW_RESSTR( STR_COLUMNS );
495 0 : if ( COLADJ_NONE != GetLineAdj() )
496 : {
497 0 : const long nWdth = static_cast<long>(GetLineWidth());
498 0 : rText = rText + " " + SW_RESSTR( STR_LINE_WIDTH ) + " " +
499 : ::GetMetricText( nWdth, eCoreUnit,
500 0 : SFX_MAPUNIT_POINT, pIntl );
501 : }
502 : }
503 : else
504 0 : rText.clear();
505 0 : return true;
506 : }
507 :
508 : //URL's and maps
509 :
510 0 : bool SwFormatURL::GetPresentation
511 : (
512 : SfxItemPresentation /*ePres*/,
513 : SfxMapUnit /*eCoreUnit*/,
514 : SfxMapUnit /*ePresUnit*/,
515 : OUString& rText,
516 : const IntlWrapper* /*pIntl*/
517 : ) const
518 : {
519 0 : rText.clear();
520 0 : if ( pMap )
521 0 : rText += "Client-Map";
522 0 : if ( !sURL.isEmpty() )
523 : {
524 0 : if ( pMap )
525 0 : rText += " - ";
526 0 : rText = rText + "URL: " + sURL;
527 0 : if ( bIsServerMap )
528 0 : rText += " (Server-Map)";
529 : }
530 0 : if ( !sTargetFrameName.isEmpty() )
531 : {
532 0 : rText = rText + ", Target: " + sTargetFrameName;
533 : }
534 0 : return true;
535 : }
536 :
537 0 : bool SwFormatEditInReadonly::GetPresentation
538 : (
539 : SfxItemPresentation /*ePres*/,
540 : SfxMapUnit /*eCoreUnit*/,
541 : SfxMapUnit /*ePresUnit*/,
542 : OUString& rText,
543 : const IntlWrapper* /*pIntl*/
544 : ) const
545 : {
546 0 : rText.clear();
547 0 : if ( GetValue() )
548 0 : rText = SW_RESSTR(STR_EDIT_IN_READONLY);
549 0 : return true;
550 : }
551 :
552 0 : void SwFormatEditInReadonly::dumpAsXml(xmlTextWriterPtr pWriter) const
553 : {
554 0 : xmlTextWriterStartElement(pWriter, BAD_CAST("swFormatEditInReadonly"));
555 0 : xmlTextWriterWriteAttribute(pWriter, BAD_CAST("whichId"), BAD_CAST(OString::number(Which()).getStr()));
556 0 : xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"), BAD_CAST(OString::boolean(GetValue()).getStr()));
557 0 : xmlTextWriterEndElement(pWriter);
558 0 : }
559 :
560 0 : bool SwFormatLayoutSplit::GetPresentation
561 : (
562 : SfxItemPresentation /*ePres*/,
563 : SfxMapUnit /*eCoreUnit*/,
564 : SfxMapUnit /*ePresUnit*/,
565 : OUString& rText,
566 : const IntlWrapper* /*pIntl*/
567 : ) const
568 : {
569 0 : if ( GetValue() )
570 0 : rText = SW_RESSTR(STR_LAYOUT_SPLIT);
571 0 : return true;
572 : }
573 :
574 0 : bool SwFormatRowSplit::GetPresentation
575 : (
576 : SfxItemPresentation /*ePres*/,
577 : SfxMapUnit /*eCoreUnit*/,
578 : SfxMapUnit /*ePresUnit*/,
579 : OUString& /*rText*/,
580 : const IntlWrapper* /*pIntl*/
581 : ) const
582 : {
583 0 : return false;
584 : }
585 :
586 0 : bool SwFormatFootnoteEndAtTextEnd::GetPresentation
587 : (
588 : SfxItemPresentation /*ePres*/,
589 : SfxMapUnit /*eCoreUnit*/,
590 : SfxMapUnit /*ePresUnit*/,
591 : OUString& /*rText*/,
592 : const IntlWrapper* /*pIntl*/
593 : ) const
594 : {
595 0 : return true;
596 : }
597 :
598 0 : bool SwFormatChain::GetPresentation
599 : (
600 : SfxItemPresentation /*ePres*/,
601 : SfxMapUnit /*eCoreUnit*/,
602 : SfxMapUnit /*ePresUnit*/,
603 : OUString& rText,
604 : const IntlWrapper* /*pIntl*/
605 : ) const
606 : {
607 0 : if ( GetPrev() || GetNext() )
608 : {
609 0 : rText = SW_RESSTR(STR_CONNECT1);
610 0 : if ( GetPrev() )
611 : {
612 0 : rText += GetPrev()->GetName();
613 0 : if ( GetNext() )
614 0 : rText += SW_RESSTR(STR_CONNECT2);
615 : }
616 0 : if ( GetNext() )
617 0 : rText += GetNext()->GetName();
618 : }
619 0 : return true;
620 : }
621 :
622 0 : bool SwFormatLineNumber::GetPresentation
623 : (
624 : SfxItemPresentation /*ePres*/,
625 : SfxMapUnit /*eCoreUnit*/,
626 : SfxMapUnit /*ePresUnit*/,
627 : OUString& rText,
628 : const IntlWrapper* /*pIntl*/
629 : ) const
630 : {
631 0 : if ( IsCount() )
632 0 : rText += SW_RESSTR(STR_LINECOUNT);
633 : else
634 0 : rText += SW_RESSTR(STR_DONTLINECOUNT);
635 0 : if ( GetStartValue() )
636 : {
637 0 : rText = rText + " " + SW_RESSTR(STR_LINCOUNT_START) +
638 0 : OUString::number( GetStartValue() );
639 : }
640 0 : return true;
641 : }
642 :
643 0 : bool SwTextGridItem::GetPresentation
644 : (
645 : SfxItemPresentation /*ePres*/,
646 : SfxMapUnit /*eCoreUnit*/,
647 : SfxMapUnit /*ePresUnit*/,
648 : OUString& rText,
649 : const IntlWrapper* /*pIntl*/
650 : ) const
651 : {
652 0 : sal_uInt16 nId = 0;
653 :
654 0 : switch ( GetGridType() )
655 : {
656 : case GRID_NONE :
657 0 : nId = STR_GRID_NONE;
658 0 : break;
659 : case GRID_LINES_ONLY :
660 0 : nId = STR_GRID_LINES_ONLY;
661 0 : break;
662 : case GRID_LINES_CHARS :
663 0 : nId = STR_GRID_LINES_CHARS;
664 0 : break;
665 : }
666 0 : if ( nId )
667 0 : rText += SW_RESSTR( nId );
668 0 : return true;
669 : }
670 :
671 0 : bool SwHeaderAndFooterEatSpacingItem::GetPresentation
672 : (
673 : SfxItemPresentation /*ePres*/,
674 : SfxMapUnit /*eCoreUnit*/,
675 : SfxMapUnit /*ePresUnit*/,
676 : OUString& /*rText*/,
677 : const IntlWrapper* /*pIntl*/
678 : ) const
679 : {
680 0 : return false;
681 : }
682 :
683 : // Graphic attributes
684 :
685 0 : bool SwMirrorGrf::GetPresentation(
686 : SfxItemPresentation /*ePres*/, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
687 : OUString& rText, const IntlWrapper* /*pIntl*/ ) const
688 : {
689 : sal_uInt16 nId;
690 0 : switch( GetValue() )
691 : {
692 0 : case RES_MIRROR_GRAPH_DONT: nId = STR_NO_MIRROR; break;
693 0 : case RES_MIRROR_GRAPH_VERT: nId = STR_VERT_MIRROR; break;
694 0 : case RES_MIRROR_GRAPH_HOR: nId = STR_HORI_MIRROR; break;
695 0 : case RES_MIRROR_GRAPH_BOTH: nId = STR_BOTH_MIRROR; break;
696 0 : default: nId = 0; break;
697 : }
698 0 : if ( nId )
699 : {
700 0 : rText = SW_RESSTR( nId );
701 0 : if (bGrfToggle)
702 0 : rText += SW_RESSTR( STR_MIRROR_TOGGLE );
703 : }
704 0 : return true;
705 : }
706 :
707 0 : bool SwRotationGrf::GetPresentation(
708 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
709 : OUString &rText, const IntlWrapper* /*pIntl*/) const
710 : {
711 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
712 0 : rText = SW_RESSTR( STR_ROTATION );
713 0 : else if( rText.getLength() )
714 0 : rText.clear();
715 0 : rText = rText + OUString::number( GetValue() ) + "\xB0";
716 0 : return true;
717 : }
718 :
719 0 : bool SwLuminanceGrf::GetPresentation(
720 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
721 : OUString &rText, const IntlWrapper* /*pIntl*/) const
722 : {
723 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
724 0 : rText = SW_RESSTR( STR_LUMINANCE );
725 0 : else if( rText.getLength() )
726 0 : rText.clear();
727 0 : rText = rText + unicode::formatPercent(GetValue(),
728 0 : Application::GetSettings().GetUILanguageTag());
729 0 : return true;
730 : }
731 :
732 0 : bool SwContrastGrf::GetPresentation(
733 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
734 : OUString &rText, const IntlWrapper* /*pIntl*/) const
735 : {
736 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
737 0 : rText = SW_RESSTR( STR_CONTRAST );
738 0 : else if( rText.getLength() )
739 0 : rText.clear();
740 0 : rText = rText + unicode::formatPercent(GetValue(),
741 0 : Application::GetSettings().GetUILanguageTag());
742 0 : return true;
743 : }
744 :
745 0 : bool SwChannelGrf::GetPresentation(
746 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
747 : OUString &rText, const IntlWrapper* /*pIntl*/) const
748 : {
749 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
750 : {
751 : sal_uInt16 nId;
752 0 : switch ( Which() )
753 : {
754 0 : case RES_GRFATR_CHANNELR: nId = STR_CHANNELR; break;
755 0 : case RES_GRFATR_CHANNELG: nId = STR_CHANNELG; break;
756 0 : case RES_GRFATR_CHANNELB: nId = STR_CHANNELB; break;
757 0 : default: nId = 0; break;
758 : }
759 0 : if( nId )
760 0 : rText = SW_RESSTR( nId );
761 0 : else if( rText.getLength() )
762 0 : rText.clear();
763 : }
764 0 : else if( rText.getLength() )
765 0 : rText.clear();
766 0 : rText = rText + unicode::formatPercent(GetValue(),
767 0 : Application::GetSettings().GetUILanguageTag());
768 0 : return true;
769 : }
770 :
771 0 : bool SwGammaGrf::GetPresentation(
772 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
773 : OUString &rText, const IntlWrapper* /*pIntl*/) const
774 : {
775 0 : OUStringBuffer aText;
776 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
777 0 : aText.append(SW_RESSTR(STR_GAMMA));
778 0 : aText.append(unicode::formatPercent(GetValue(),
779 0 : Application::GetSettings().GetUILanguageTag()));
780 0 : rText = aText.makeStringAndClear();
781 0 : return true;
782 : }
783 :
784 0 : bool SwInvertGrf::GetPresentation(
785 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
786 : OUString &rText, const IntlWrapper* /*pIntl*/) const
787 : {
788 0 : rText.clear();
789 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
790 : {
791 0 : const sal_uInt16 nId = GetValue() ? STR_INVERT : STR_INVERT_NOT;
792 0 : rText = SW_RESSTR( nId );
793 : }
794 0 : return true;
795 : }
796 :
797 0 : bool SwTransparencyGrf::GetPresentation(
798 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
799 : OUString &rText, const IntlWrapper* /*pIntl*/) const
800 : {
801 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
802 0 : rText = SW_RESSTR( STR_TRANSPARENCY );
803 0 : else if( rText.getLength() )
804 0 : rText.clear();
805 0 : rText = rText + unicode::formatPercent(GetValue(),
806 0 : Application::GetSettings().GetUILanguageTag());
807 0 : return true;
808 : }
809 :
810 0 : bool SwDrawModeGrf::GetPresentation(
811 : SfxItemPresentation ePres, SfxMapUnit /*eCoreUnit*/, SfxMapUnit /*ePresUnit*/,
812 : OUString &rText, const IntlWrapper* /*pIntl*/) const
813 : {
814 0 : rText.clear();
815 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
816 : {
817 : sal_uInt16 nId;
818 0 : switch ( GetValue() )
819 : {
820 :
821 0 : case GRAPHICDRAWMODE_GREYS: nId = STR_DRAWMODE_GREY; break;
822 0 : case GRAPHICDRAWMODE_MONO: nId = STR_DRAWMODE_BLACKWHITE; break;
823 0 : case GRAPHICDRAWMODE_WATERMARK: nId = STR_DRAWMODE_WATERMARK; break;
824 0 : default: nId = STR_DRAWMODE_STD; break;
825 : }
826 0 : rText = SW_RESSTR( STR_DRAWMODE ) + SW_RESSTR( nId );
827 : }
828 0 : return true;
829 : }
830 :
831 0 : bool SwFormatFollowTextFlow::GetPresentation( SfxItemPresentation ePres,
832 : SfxMapUnit /*eCoreMetric*/,
833 : SfxMapUnit /*ePresMetric*/,
834 : OUString &rText,
835 : const IntlWrapper* /*pIntl*/ ) const
836 : {
837 0 : rText.clear();
838 0 : if( SFX_ITEM_PRESENTATION_COMPLETE == ePres )
839 : {
840 0 : const sal_uInt16 nId = GetValue() ? STR_FOLLOW_TEXT_FLOW : STR_DONT_FOLLOW_TEXT_FLOW;
841 0 : rText = SW_RESSTR( nId );
842 : }
843 0 : return true;
844 : }
845 :
846 0 : void SwFormatFollowTextFlow::dumpAsXml(xmlTextWriterPtr pWriter) const
847 : {
848 0 : xmlTextWriterStartElement(pWriter, BAD_CAST("swFormatFollowTextFlow"));
849 0 : xmlTextWriterWriteAttribute(pWriter, BAD_CAST("whichId"), BAD_CAST(OString::number(Which()).getStr()));
850 0 : xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"), BAD_CAST(OString::boolean(GetValue()).getStr()));
851 0 : xmlTextWriterEndElement(pWriter);
852 177 : }
853 :
854 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|