Commits

Anonymous committed afb3193

CWS-TOOLING: integrate CWS os134
2009-09-02 08:03:24 +0200 os r275688 : newline added
2009-09-01 15:36:05 +0200 os r275664 : newline added
2009-09-01 09:24:34 +0200 os r275643 : #i104499# ruby property support fixed
2009-08-27 08:51:05 +0200 os r275455 : CWS-TOOLING: rebase CWS os134 to trunk@275331 (milestone: DEV300:m56)
2009-08-25 08:54:46 +0200 os r275334 : #i76332# switch to edit mode - regard 'Open in design mode' setting
2009-08-05 14:00:01 +0200 os r274664 : #b6863593#/#i102949# print options ProspectRTL, HiddenText, Placedholder added to SwXPrintSettings
2009-08-05 13:17:21 +0200 os r274655 : #b6858652# find linked sections/bookmarks case sensitively first
2009-07-30 11:14:03 +0200 os r274472 : #i99860# button size on security page enhanced
2009-07-30 10:40:40 +0200 os r274471 : #i97565# moving global document content needs undo, related string has no parameter

Comments (0)

Files changed (9)

filter/source/pdf/impdialog.src

         TabStop = TRUE ;
         Disable = TRUE ;
         Pos = MAP_APPFONT ( 12, 5 ) ;
-        Size = MAP_APPFONT ( 100 , 13 ) ;
+        Size = MAP_APPFONT ( 120 , 13 ) ;
         Text[ en-US ] = "Set ~open password...";
 	};
 
         TabStop = TRUE ;
         Disable = TRUE ;
         Pos = MAP_APPFONT ( 12, 45 ) ;
-        Size = MAP_APPFONT ( 100 , 13 ) ;
+        Size = MAP_APPFONT ( 120 , 13 ) ;
         Text[ en-US ] = "Set ~permission password...";
 	};
 

sw/inc/printdata.hxx

     void SetPrintEmptyPages(sal_Bool b ) { doSetModified(); bPrintEmptyPages = b;}
     void SetPrintPostIts    ( sal_Int16 n){ doSetModified(); nPrintPostIts = n; }
     void SetPrintProspect   ( sal_Bool b ) { doSetModified(); bPrintProspect = b; }
+    void SetPrintProspect_RTL   ( sal_Bool b ) { doSetModified(); bPrintProspect_RTL = b; }
     void SetPrintPageBackground(sal_Bool b){ doSetModified(); bPrintPageBackground = b;}
     void SetPrintBlackFont(sal_Bool b){ doSetModified(); bPrintBlackFont = b;}
 	void SetPrintSingleJobs(sal_Bool b){ doSetModified(); bPrintSingleJobs = b;}
 };
 
 #endif  //_SW_PRINTDATA_HXX
-

sw/source/core/doc/docdde.cxx

 namespace
 {
 
-    static ::sw::mark::DdeBookmark* lcl_FindDdeBookmark(const IDocumentMarkAccess& rMarkAccess, const String& rName)
+    static ::sw::mark::DdeBookmark* const lcl_FindDdeBookmark(const IDocumentMarkAccess& rMarkAccess, const String& rName, bool bCaseSensitive)
     {
         //Iterating over all bookmarks, checking DdeBookmarks
-        const String sNameLc = GetAppCharClass().lower(rName);
+        const ::rtl::OUString sNameLc = bCaseSensitive ? rName : GetAppCharClass().lower(rName);
         for(IDocumentMarkAccess::const_iterator_t ppMark = rMarkAccess.getMarksBegin();
             ppMark != rMarkAccess.getMarksEnd();
             ppMark++)
         {
             ::sw::mark::DdeBookmark* const pBkmk = dynamic_cast< ::sw::mark::DdeBookmark*>(ppMark->get());
-            if(pBkmk && GetAppCharClass().lower(pBkmk->GetName()) == sNameLc)
+            if(pBkmk && 
+                (bCaseSensitive && (pBkmk->GetName() == sNameLc)) ||
+                (!bCaseSensitive && GetAppCharClass().lower(pBkmk->GetName()) == String( sNameLc )))
                 return pBkmk;
         }
         return NULL;
     {}
 };
 
-BOOL lcl_FindSection( const SwSectionFmtPtr& rpSectFmt, void* pArgs )
+BOOL lcl_FindSection( const SwSectionFmtPtr& rpSectFmt, void* pArgs, bool bCaseSensitive )
 {
 	SwSection* pSect = rpSectFmt->GetSection();
 	if( pSect )
 	{
-		String sNm( GetAppCharClass().lower( pSect->GetName() ));
-		if( sNm.Equals( ((_FindItem*)pArgs)->rItem ))
+        String sNm( bCaseSensitive ? pSect->GetName() : GetAppCharClass().lower( pSect->GetName() ));
+        String sCompare( bCaseSensitive ? ((_FindItem*)pArgs)->rItem  : GetAppCharClass().lower( ((_FindItem*)pArgs)->rItem ));
+        if( sNm == sCompare )
 		{
 			// gefunden, als erfrage die Daten
 			const SwNodeIndex* pIdx;
 	}
 	return TRUE;		// dann weiter
 }
+BOOL lcl_FindSectionCaseSensitive( const SwSectionFmtPtr& rpSectFmt, void* pArgs )
+{
+    return lcl_FindSection( rpSectFmt, pArgs, true );
+}    
+BOOL lcl_FindSectionCaseInsensitive( const SwSectionFmtPtr& rpSectFmt, void* pArgs )
+{
+    return lcl_FindSection( rpSectFmt, pArgs, false );
+}    
 
 
 
 bool SwDoc::GetData( const String& rItem, const String& rMimeType,
                      uno::Any & rValue ) const
 {
-    ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem);
-    if(pBkmk) return SwServerObject(*pBkmk).GetData(rValue, rMimeType);
+    //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+    bool bCaseSensitive = true;
+    while( true )
+    {
+        ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem, bCaseSensitive);
+        if(pBkmk) 
+            return SwServerObject(*pBkmk).GetData(rValue, rMimeType);
 
-	// haben wir ueberhaupt das Item vorraetig?
-	String sItem(GetAppCharClass().lower(rItem));
-	_FindItem aPara( sItem );
-	((SwSectionFmts&)*pSectionFmtTbl).ForEach( 0, pSectionFmtTbl->Count(),
-												lcl_FindSection, &aPara );
-	if( aPara.pSectNd )
-	{
-		// gefunden, als erfrage die Daten
-		return SwServerObject( *aPara.pSectNd ).GetData( rValue, rMimeType );
-	}
+        // haben wir ueberhaupt das Item vorraetig?
+        String sItem( bCaseSensitive ? rItem : GetAppCharClass().lower(rItem));
+        _FindItem aPara( sItem );
+        ((SwSectionFmts&)*pSectionFmtTbl).ForEach( 0, pSectionFmtTbl->Count(),
+                                                    bCaseSensitive ? lcl_FindSectionCaseSensitive : lcl_FindSectionCaseInsensitive, &aPara );
+        if( aPara.pSectNd )
+        {
+            // gefunden, als erfrage die Daten
+            return SwServerObject( *aPara.pSectNd ).GetData( rValue, rMimeType );
+        }
+        if( !bCaseSensitive ) 
+            break;
+        bCaseSensitive = false;
+    }
 
+    _FindItem aPara( GetAppCharClass().lower( rItem ));
 	((SwFrmFmts*)pTblFrmFmtTbl)->ForEach( 0, pTblFrmFmtTbl->Count(),
 											lcl_FindTable, &aPara );
 	if( aPara.pTblNd )
 bool SwDoc::SetData( const String& rItem, const String& rMimeType,
                      const uno::Any & rValue )
 {
-    ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem);
-    if(pBkmk) return SwServerObject(*pBkmk).SetData(rMimeType, rValue);
+    //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+    bool bCaseSensitive = true;
+    while( true )
+    {
+        ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem, bCaseSensitive);
+        if(pBkmk) 
+            return SwServerObject(*pBkmk).SetData(rMimeType, rValue);
 
-	// haben wir ueberhaupt das Item vorraetig?
-	String sItem(GetAppCharClass().lower(rItem));
-	_FindItem aPara( sItem );
-	pSectionFmtTbl->ForEach( 0, pSectionFmtTbl->Count(), lcl_FindSection, &aPara );
-	if( aPara.pSectNd )
-	{
-		// gefunden, als erfrage die Daten
-		return SwServerObject( *aPara.pSectNd ).SetData( rMimeType, rValue );
-	}
+        // haben wir ueberhaupt das Item vorraetig?
+        String sItem( bCaseSensitive ? rItem : GetAppCharClass().lower(rItem));
+        _FindItem aPara( sItem );
+        pSectionFmtTbl->ForEach( 0, pSectionFmtTbl->Count(), bCaseSensitive ? lcl_FindSectionCaseSensitive : lcl_FindSectionCaseInsensitive, &aPara );
+        if( aPara.pSectNd )
+        {
+            // gefunden, als erfrage die Daten
+            return SwServerObject( *aPara.pSectNd ).SetData( rMimeType, rValue );
+        }
+        if( !bCaseSensitive ) 
+            break;
+        bCaseSensitive = false;
+    }
 
+    String sItem(GetAppCharClass().lower(rItem));
+    _FindItem aPara( sItem );
 	pTblFrmFmtTbl->ForEach( 0, pTblFrmFmtTbl->Count(), lcl_FindTable, &aPara );
 	if( aPara.pTblNd )
 	{
 {
     SwServerObject* pObj = NULL;
 
-    // bookmarks
-    ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem);
-    if(pBkmk && pBkmk->IsExpanded()
-        && (0 == (pObj = pBkmk->GetRefObject())))
+    //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+    bool bCaseSensitive = true;
+    while( true )
     {
-        // mark found, but no link yet -> create hotlink 
-        pObj = new SwServerObject(*pBkmk);
-        pBkmk->SetRefObject(pObj);
-        GetLinkManager().InsertServer(pObj);
-    }     
-    if(pObj) return pObj;
+        // bookmarks
+        ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, rItem, bCaseSensitive);
+        if(pBkmk && pBkmk->IsExpanded()
+            && (0 == (pObj = pBkmk->GetRefObject())))
+        {
+            // mark found, but no link yet -> create hotlink 
+            pObj = new SwServerObject(*pBkmk);
+            pBkmk->SetRefObject(pObj);
+            GetLinkManager().InsertServer(pObj);
+        }     
+        if(pObj) 
+            return pObj;
 
-    _FindItem aPara(GetAppCharClass().lower(rItem));
-    // sections
-    ((SwSectionFmts&)*pSectionFmtTbl).ForEach(0, pSectionFmtTbl->Count(), lcl_FindSection, &aPara);
-    if(aPara.pSectNd
-        && (0 == (pObj = aPara.pSectNd->GetSection().GetObject())))
-    {
-        // section found, but no link yet -> create hotlink 
-        pObj = new SwServerObject( *aPara.pSectNd );
-        aPara.pSectNd->GetSection().SetRefObject( pObj );
-        GetLinkManager().InsertServer(pObj);
+        _FindItem aPara(bCaseSensitive ? rItem : GetAppCharClass().lower(rItem));
+        // sections
+        ((SwSectionFmts&)*pSectionFmtTbl).ForEach(0, pSectionFmtTbl->Count(), bCaseSensitive ? lcl_FindSectionCaseSensitive : lcl_FindSectionCaseInsensitive, &aPara);
+        if(aPara.pSectNd
+            && (0 == (pObj = aPara.pSectNd->GetSection().GetObject())))
+        {
+            // section found, but no link yet -> create hotlink 
+            pObj = new SwServerObject( *aPara.pSectNd );
+            aPara.pSectNd->GetSection().SetRefObject( pObj );
+            GetLinkManager().InsertServer(pObj);
+        }
+        if(pObj) 
+            return pObj;
+        if( !bCaseSensitive ) 
+            break;
+        bCaseSensitive = false;
     }
-    if(pObj) return pObj;
 
+    _FindItem aPara( GetAppCharClass().lower(rItem) );
     // tables 
     ((SwFrmFmts*)pTblFrmFmtTbl)->ForEach(0, pTblFrmFmtTbl->Count(), lcl_FindTable, &aPara);
     if(aPara.pTblNd
 			return FALSE;
 	}
 
-    ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, sItem);
-    if(pBkmk)
+    //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+    bool bCaseSensitive = true;
+    while( true )
     {
-        if(pBkmk->IsExpanded())
-            rpPam = new SwPaM(
-                pBkmk->GetMarkPos(),
-                pBkmk->GetOtherMarkPos());
-        return static_cast<bool>(rpPam);
+        ::sw::mark::DdeBookmark* const pBkmk = lcl_FindDdeBookmark(*pMarkManager, sItem, bCaseSensitive);
+        if(pBkmk)
+        {
+            if(pBkmk->IsExpanded())
+                rpPam = new SwPaM(
+                    pBkmk->GetMarkPos(),
+                    pBkmk->GetOtherMarkPos());
+            return static_cast<bool>(rpPam);
+        }
+
+        // 
+        _FindItem aPara( bCaseSensitive ? sItem : rCC.lower( sItem ) );
+
+        if( pSectionFmtTbl->Count() )
+        {
+            ((SwSectionFmts&)*pSectionFmtTbl).ForEach( 0, pSectionFmtTbl->Count(),
+                                                    bCaseSensitive ? lcl_FindSectionCaseSensitive : lcl_FindSectionCaseInsensitive, &aPara );
+            if( aPara.pSectNd )
+            {
+                rpRange = new SwNodeRange( *aPara.pSectNd, 1,
+                                        *aPara.pSectNd->EndOfSectionNode() );
+                return TRUE;
+
+            }
+        }
+        if( !bCaseSensitive ) 
+            break;
+        bCaseSensitive = false;
     }
-
-	// alte "Mechanik"
-	rCC.toLower( sItem );
-	_FindItem aPara( sItem );
-
-	if( pSectionFmtTbl->Count() )
-	{
-		((SwSectionFmts&)*pSectionFmtTbl).ForEach( 0, pSectionFmtTbl->Count(),
-												lcl_FindSection, &aPara );
-		if( aPara.pSectNd )
-		{
-			rpRange = new SwNodeRange( *aPara.pSectNd, 1,
-									*aPara.pSectNd->EndOfSectionNode() );
-			return TRUE;
-
-		}
-	}
 	return FALSE;
 }
+

sw/source/core/edit/edglbldc.cxx

 	else
         aInsPos  = pMyDoc->GetNodes().GetEndOfContent();
 
-    BOOL bRet = pMyDoc->Move( aRg, aInsPos, IDocumentContentOperations::DOC_MOVEALLFLYS );
+    BOOL bRet = pMyDoc->Move( aRg, aInsPos, 
+        IDocumentContentOperations::SwMoveFlags(IDocumentContentOperations::DOC_MOVEALLFLYS|IDocumentContentOperations::DOC_CREATEUNDOOBJ ));
 
 	EndAllAction();
 	return bRet;

sw/source/core/undo/undo.src

 };
 String STR_MOVE_UNDO
 {
-	Text [ en-US ] = "Move: $1" ;
+    Text [ en-US ] = "Move" ;
 };
 String STR_INSATTR_UNDO
 {

sw/source/core/unocore/unoport.cxx

                 aResult.State  = pPropertyStates[i];
 
                 aResult.Result = beans::TolerantPropertySetResultType::UNKNOWN_FAILURE;
+                //#i104499# ruby portion attributes need special handling: 
+                if( pEntry->nWID == RES_TXTATR_CJK_RUBY &&
+                    ePortionType == PORTION_RUBY_START )
+                        aResult.State = beans::PropertyState_DIRECT_VALUE;
                 if (!bDirectValuesOnly  ||  beans::PropertyState_DIRECT_VALUE == aResult.State)
                 {
 					// get property value
 SwXRubyPortion::~SwXRubyPortion()
 {
 }
-

sw/source/ui/dialog/uiregionsw.cxx

 	aCurName.SetModifyHdl	( LINK( this, SwInsertSectionTabPage, NameEditHdl));
 	aDDECB.SetClickHdl		( LINK( this, SwInsertSectionTabPage, DDEHdl ));
     ChangeProtectHdl(&aProtectCB);
+    aSubRegionED.EnableAutocomplete( sal_True, sal_True );
 }
 /* -----------------21.05.99 10:31-------------------
  *

sw/source/ui/uiview/view.cxx

 #include <svx/extrusionbar.hxx>
 #include <svx/fontworkbar.hxx>
 #include <unotxvw.hxx>
-#ifndef _CMDID_H
 #include <cmdid.h>
-#endif
-#ifndef _SWHINTS_HXX
 #include <swhints.hxx>
-#endif
 #include <swmodule.hxx>
 #include <inputwin.hxx>
 #include <chartins.hxx>
 #include <uivwimp.hxx>
 #include <uitool.hxx>
 #include <edtwin.hxx>
-#ifndef _TEXTSH_HXX
 #include <textsh.hxx>
-#endif
-#ifndef _LISTSH_HXX
 #include <listsh.hxx>
-#endif
-#ifndef _TABSH_HXX
 #include <tabsh.hxx>
-#endif
-#ifndef _GRFSH_HXX
 #include <grfsh.hxx>
-#endif
-#ifndef _MEDIASH_HXX
 #include <mediash.hxx>
-#endif
-#ifndef _DOCSH_HXX
 #include <docsh.hxx>
-#endif
 #include <frmsh.hxx>
-#ifndef _OLESH_HXX
 #include <olesh.hxx>
-#endif
-#ifndef _DRAWSH_HXX
 #include <drawsh.hxx>
-#endif
-#ifndef _DRAWBASE_HXX
 #include <drawbase.hxx>
-#endif
-#ifndef _DRFORMSH_HXX
 #include <drformsh.hxx>
-#endif
-#ifndef _DRWTXTSH_HXX
 #include <drwtxtsh.hxx>
-#endif
-#ifndef _BEZIERSH_HXX
 #include <beziersh.hxx>
-#endif
-#ifndef _GLOBDOC_HXX
 #include <globdoc.hxx>
-#endif
 #include <scroll.hxx>
-#ifndef _GLOBDOC_HXX
 #include <globdoc.hxx>
-#endif
 #include <navipi.hxx>
 #include <gloshdl.hxx>
 #include <usrpref.hxx>
-#ifndef _SRCVIEW_HXX
 #include <srcview.hxx>
-#endif
 #include <doc.hxx>
-#ifndef _WDOCSH_HXX
+#include <drawdoc.hxx>
 #include <wdocsh.hxx>
-#endif
-#ifndef _WVIEW_HXX
 #include <wview.hxx>
-#endif
 #include <workctrl.hxx>
 #include <wrtsh.hxx>
-#ifndef _BARCFG_HXX
 #include <barcfg.hxx>
-#endif
-#ifndef _PVIEW_HXX
 #include <pview.hxx>
-#endif
 #include <swdtflvr.hxx>
-#ifndef _VIEW_HRC
 #include <view.hrc>
-#endif
-#ifndef _GLOBDOC_HRC
 #include <globdoc.hrc>
-#endif
-#ifndef _FRMUI_HRC
 #include <frmui.hrc>
-#endif
 #include <cfgitems.hxx>
 #include <prtopt.hxx>
 #include <swprtopt.hxx>
 #include <com/sun/star/frame/FrameSearchFlag.hpp>
 #include <com/sun/star/scanner/ScannerContext.hpp>
 #include <com/sun/star/scanner/XScannerManager.hpp>
-#ifndef _TOOLKIT_HELPER_VCLUNOHELPER_HXX_
 #include <toolkit/unohlp.hxx>
-#endif
 #include <rtl/ustrbuf.hxx>
 #include <xmloff/xmluconv.hxx>
 
                         CreateTab();
 					else
                         KillTab();
-					SfxBoolItem aItem( SID_FM_DESIGN_MODE, !GetDocShell()->IsReadOnly());
-					GetDispatcher().Execute( SID_FM_DESIGN_MODE, SFX_CALLMODE_ASYNCHRON,
+					bool bReadonly = GetDocShell()->IsReadOnly();
+                    //#i76332# if document is to be opened in alive-mode then this has to be regarded while switching from readonly-mode to edit-mode
+                    if( !bReadonly )
+                    {
+                        SwDrawDocument * pDrawDoc = 0;
+                        if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * > (GetDocShell()->GetDoc()->GetDrawModel() ) ) )
+                        {
+				            if( !pDrawDoc->GetOpenInDesignMode() )
+                                break;// don't touch the design mode
+                        }
+                    }
+                    SfxBoolItem aItem( SID_FM_DESIGN_MODE, !bReadonly);
+                    GetDispatcher().Execute( SID_FM_DESIGN_MODE, SFX_CALLMODE_ASYNCHRON,
 												&aItem, 0L );
 				}
 				break;

sw/source/ui/uno/unomod.cxx

 	HANDLE_PRINTSET_PAPER_FROM_SETUP,
 	HANDLE_PRINTSET_TABLES,
     HANDLE_PRINTSET_SINGLE_JOBS,
-    HANDLE_PRINTSET_EMPTY_PAGES
+    HANDLE_PRINTSET_EMPTY_PAGES,
+    HANDLE_PRINTSET_PROSPECT_RTL,
+    HANDLE_PRINTSET_PLACEHOLDER,
+    HANDLE_PRINTSET_HIDDEN_TEXT
 };
 
 static ChainablePropertySetInfo * lcl_createViewSettingsInfo()
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintControls" ), 		 HANDLE_PRINTSET_CONTROLS			, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintDrawings" ), 		 HANDLE_PRINTSET_DRAWINGS			, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintGraphics" ), 		 HANDLE_PRINTSET_GRAPHICS			, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
+        { RTL_CONSTASCII_STRINGPARAM ( "PrintHiddenText"),       HANDLE_PRINTSET_HIDDEN_TEXT        , CPPUTYPE_BOOLEAN, PROPERTY_NONE,  0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintLeftPages" ), 		 HANDLE_PRINTSET_LEFT_PAGES			, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintPageBackground" ),  HANDLE_PRINTSET_PAGE_BACKGROUND	, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintProspect" ), 		 HANDLE_PRINTSET_PROSPECT			, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
+        { RTL_CONSTASCII_STRINGPARAM ( "PrintProspectRTL" ),     HANDLE_PRINTSET_PROSPECT_RTL       , CPPUTYPE_BOOLEAN, PROPERTY_NONE,  0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintReversed" ), 		 HANDLE_PRINTSET_REVERSED   		, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintRightPages" ), 	 HANDLE_PRINTSET_RIGHT_PAGES		, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintFaxName" ), 		 HANDLE_PRINTSET_FAX_NAME			, CPPUTYPE_OUSTRING, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintPaperFromSetup" ),  HANDLE_PRINTSET_PAPER_FROM_SETUP	, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintTables" ), 		 HANDLE_PRINTSET_TABLES				, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
+        { RTL_CONSTASCII_STRINGPARAM ( "PrintTextPlaceholder"),  HANDLE_PRINTSET_PLACEHOLDER        , CPPUTYPE_BOOLEAN, PROPERTY_NONE,  0},
 		{ RTL_CONSTASCII_STRINGPARAM ( "PrintSingleJobs" ), 	 HANDLE_PRINTSET_SINGLE_JOBS		, CPPUTYPE_BOOLEAN, PROPERTY_NONE,	0},
         { RTL_CONSTASCII_STRINGPARAM ( "PrintEmptyPages" ),      HANDLE_PRINTSET_EMPTY_PAGES        , CPPUTYPE_BOOLEAN, PROPERTY_NONE,  0},
         { 0, 0, 0, CPPUTYPE_UNKNOWN, 0, 0 }
 				throw lang::IllegalArgumentException();
 		}
 		break;
+        case HANDLE_PRINTSET_PROSPECT_RTL:
+        {
+            bVal = *(sal_Bool*)rValue.getValue();
+            mpPrtOpt->SetPrintProspect_RTL(bVal);
+        }
+        break;
+        case HANDLE_PRINTSET_PLACEHOLDER:
+        {
+            bVal = *(sal_Bool*)rValue.getValue();
+            mpPrtOpt->SetPrintTextPlaceholder(bVal);
+        }
+        break;
+        case HANDLE_PRINTSET_HIDDEN_TEXT:
+        {
+            bVal = *(sal_Bool*)rValue.getValue();
+            mpPrtOpt->SetPrintHiddenText(bVal);
+        }
+        break;
 		default:
 			throw UnknownPropertyException();
 	}
 			rValue <<= mpPrtOpt->GetFaxName();
 		}
 		break;
+        case HANDLE_PRINTSET_PROSPECT_RTL:
+        {
+            rValue <<= mpPrtOpt->IsPrintProspect_RTL();
+        }
+        break;
+        case HANDLE_PRINTSET_PLACEHOLDER:
+        {
+            rValue <<= mpPrtOpt->IsPrintTextPlaceholder();
+        }
+        break;
+        case HANDLE_PRINTSET_HIDDEN_TEXT:
+        {
+            rValue <<= mpPrtOpt->IsPrintHiddenText();
+        }
+        break;
 		default:
 			throw UnknownPropertyException();
 	}
 	pArray[0] = C2U("com.sun.star.text.ViewSettings");
 	return aRet;
 }
+