merge from trunk


git-svn-id: https://svn.apache.org/repos/asf/openoffice/branches/l10n40@1546803 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/main/accessibility/inc/accessibility/extended/accessiblelistbox.hxx b/main/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
index a313c82..c18189d 100644
--- a/main/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
+++ b/main/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
@@ -116,7 +116,6 @@
 		::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
 		void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
 
-		// IA2 CWS
 		sal_Int32 SAL_CALL getRoleType();
 		
 private:
diff --git a/main/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx b/main/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
index f1903cc..6efe63d 100644
--- a/main/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
+++ b/main/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
@@ -52,7 +52,6 @@
 #include <comphelper/accessibletexthelper.hxx>
 #include <rtl/ref.hxx>
 
-// IAccessible2 implementation, 2009
 #ifndef _SVTOOLS_HRC 
 #include "svtools/svtools.hrc" 
 #endif
@@ -594,7 +593,6 @@
     virtual ::css::uno::Reference< ::css::accessibility::XAccessible >
     SAL_CALL getAccessibleAtPoint(::css::awt::Point const & rPoint)
         throw (::css::uno::RuntimeException);
-// IAccessible2 implementation, 2009
     virtual void	FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
    virtual void	FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
     // ??? Will be called with both the external (Solar) and internal mutex
@@ -648,7 +646,6 @@
     void handleSelectionChangeNotification();
 
     void notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast );
-// IAccessible2 implementation, 2009
     ::sal_Int32 getSelectionType(::sal_Int32 nNewFirstPara, ::sal_Int32 nNewFirstPos, ::sal_Int32 nNewLastPara, ::sal_Int32 nNewLastPos);
     void sendEvent(::sal_Int32 start, ::sal_Int32 end, ::sal_Int16 nEventId);
 
diff --git a/main/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx b/main/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
index c0b0841..4be2ebb 100644
--- a/main/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
+++ b/main/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
@@ -189,7 +189,6 @@
 	virtual void ProcessWindowChildEvent (const VclWindowEvent& rVclWindowEvent);
 	virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
 
-// IAccessible2 implementation, 2009
 	virtual void	FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
 
 private:
diff --git a/main/accessibility/source/extended/accessibleeditbrowseboxcell.cxx b/main/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
index a92b233..67e39fe 100644
--- a/main/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
+++ b/main/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
@@ -130,7 +130,6 @@
 		SolarMethodGuard aGuard( *this );
 
         // TODO: localize this!
-// IAccessible2 implementation, 2009
         //String sName = mpBrowseBox->GetColumnDescription( getColumnPos( ) );
 		
         //if ( 0 == sName.Len() )
diff --git a/main/accessibility/source/extended/accessiblelistboxentry.cxx b/main/accessibility/source/extended/accessiblelistboxentry.cxx
index d8267cb..b1d4f8d 100644
--- a/main/accessibility/source/extended/accessiblelistboxentry.cxx
+++ b/main/accessibility/source/extended/accessiblelistboxentry.cxx
@@ -115,7 +115,6 @@
 		}
 	}
 	
-	// IA2 CWS
 	void AccessibleListBoxEntry::NotifyAccessibleEvent( sal_Int16 _nEventId,
 											   	const ::com::sun::star::uno::Any& _aOldValue,
 											   	const ::com::sun::star::uno::Any& _aNewValue )
@@ -214,10 +213,8 @@
 	{
 		::rtl::OUString sRet;
 		SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
-		//IAccessibility2 Implementation 2009-----
 		if ( pEntry )
 			sRet = getListBox()->SearchEntryTextWithHeadTitle( pEntry );
-		//-----IAccessibility2 Implementation 2009
 		return sRet;
 	}
 	// -----------------------------------------------------------------------------
@@ -390,10 +387,8 @@
 				SvLBoxEntry* pParentEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
 				DBG_ASSERT( pParentEntry, "AccessibleListBoxEntry::implGetParentAccessible: could not obtain a parent entry!" );
 
-				//IAccessibility2 Implementation 2009-----
 				if ( pParentEntry )
 					pParentEntry = getListBox()->GetParent(pParentEntry);
-				//-----IAccessibility2 Implementation 2009
 				if ( pParentEntry )
 					xParent = new AccessibleListBoxEntry( *getListBox(), pParentEntry, NULL );
 					// note that we pass NULL here as parent-accessible:
@@ -885,9 +880,7 @@
 			}
 		}else if( (nIndex == 1 && (treeFlag & TREEFLAG_CHKBTN)) || nIndex == 0 )
 		{
-			//IAccessibility2 Implementation 2009-----
 			if( pEntry->HasChilds() || pEntry->HasChildsOnDemand() )
-			//-----IAccessibility2 Implementation 2009
 				return getListBox()->IsExpanded( pEntry ) ? \
 				::rtl::OUString(TK_RES_STRING(STR_SVT_ACC_ACTION_COLLAPSE)) :
 				::rtl::OUString(TK_RES_STRING(STR_SVT_ACC_ACTION_EXPAND));
@@ -915,11 +908,7 @@
 		::osl::MutexGuard aGuard( m_aMutex );
 
 		EnsureIsAlive();
-// IAccessible2 implementation, 2009
-//		SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
-//		SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
-
-		SvLBoxEntry* pEntry =GetRealChild(nChildIndex);
+		SvLBoxEntry* pEntry = GetRealChild(nChildIndex);
 		if ( !pEntry )
 			throw IndexOutOfBoundsException();
 
@@ -1190,7 +1179,7 @@
 			SvLBoxEntry* pEntry = pBox->GetEntryFromPath( m_aEntryPath );
 			if ( pEntry )
 			{	
-				sal_Int32 nValue, nValueMin, nValueMax;
+				sal_Int32 nValue(0), nValueMin(0), nValueMax(0);
 				aNumber >>= nValue;
 				getMinimumValue() >>= nValueMin;
 				getMaximumValue() >>= nValueMax;
diff --git a/main/accessibility/source/extended/textwindowaccessibility.cxx b/main/accessibility/source/extended/textwindowaccessibility.cxx
index 1ac7816..11aeee2 100644
--- a/main/accessibility/source/extended/textwindowaccessibility.cxx
+++ b/main/accessibility/source/extended/textwindowaccessibility.cxx
@@ -1533,21 +1533,7 @@
 
 void Document::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
 {
-	switch ( rVclWindowEvent.GetId() )
-	{
-		case VCLEVENT_WINDOW_GETFOCUS:
-		case VCLEVENT_WINDOW_LOSEFOCUS:
-		{
-			// #107179# if our parent is a compound control (e.g. MultiLineEdit), 
-			// suppress the window focus events here
-// IAccessible2 implementation 2009
-			//if ( !m_bCompoundControlChild )
-				VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
-		}
-		break;
-		default:
-			VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
-	}
+	VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
 }
 
 // virtual
diff --git a/main/accessibility/source/helper/accessiblestrings.src b/main/accessibility/source/helper/accessiblestrings.src
index 29aac3c..ef6c9e7 100644
--- a/main/accessibility/source/helper/accessiblestrings.src
+++ b/main/accessibility/source/helper/accessiblestrings.src
@@ -25,12 +25,10 @@
 #include <accessibility/helper/accessiblestrings.hrc>
 #endif
 
-//IAccessibility2 Impplementaton 2009-----
 String RID_STR_ACC_ACTION_CLICK
 {
 	Text = "press";
 };
-//-----IAccessibility2 Impplementaton 2009
 
 String RID_STR_ACC_ACTION_TOGGLEPOPUP
 {
diff --git a/main/accessibility/source/standard/vclxaccessiblecheckbox.cxx b/main/accessibility/source/standard/vclxaccessiblecheckbox.cxx
index c222b95..59db862 100644
--- a/main/accessibility/source/standard/vclxaccessiblecheckbox.cxx
+++ b/main/accessibility/source/standard/vclxaccessiblecheckbox.cxx
@@ -238,9 +238,6 @@
 	if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
         throw IndexOutOfBoundsException();
 
-	//IAccessibility2 Implementation 2009-----
-	//	return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-	//-----IAccessibility2 Implementation 2009
 	if(IsChecked())
 		return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_UNCHECK ) );
 	else
diff --git a/main/accessibility/source/standard/vclxaccessiblelist.cxx b/main/accessibility/source/standard/vclxaccessiblelist.cxx
index 07fdb4b..f142bdd 100644
--- a/main/accessibility/source/standard/vclxaccessiblelist.cxx
+++ b/main/accessibility/source/standard/vclxaccessiblelist.cxx
@@ -426,13 +426,7 @@
 		case VCLEVENT_COMBOBOX_SCROLLED:
 			UpdateEntryRange_Impl();
 			break;
-		// IAccessible2 implementation, 2009
-		/*
-		case VCLEVENT_LISTBOX_SELECT:
-			if ( !m_bDisableProcessEvent )
-				UpdateSelection_Impl();
-			break;
-		*/
+
 		// The selection events VCLEVENT_COMBOBOX_SELECT and
 		// VCLEVENT_COMBOBOX_DESELECT are not handled here because here we
 		// have no access to the edit field.  Its text is necessary to
@@ -562,16 +556,7 @@
 	{
 		xChild = m_aAccessibleChildren[nPos];
 		// check if position is empty and can be used else we have to adjust all entries behind this
-		if ( xChild.is() )
-		{
-			// IAccessible2 implementation, 2009
-			/*	
-			ListItems::iterator aIter = m_aAccessibleChildren.begin() + nPos;
-            ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::IncrementIndexInParent);
-			adjustEntriesIndexInParent(	aIter, aTemp);
-			*/
-		}
-		else
+		if ( !xChild.is() )
 		{
 			xChild = new VCLXAccessibleListItem(m_pListBoxHelper, i, this);
 			m_aAccessibleChildren[nPos] = xChild;
@@ -584,7 +569,6 @@
 		sal_Bool bNowSelected = sal_False;
 		if ( m_pListBoxHelper )
 			bNowSelected = m_pListBoxHelper->IsEntryPosSelected ((sal_uInt16)i);
-		// IAccessible2 implementation 2009
 		if (bNowSelected)
 			m_nCurSelectedPos = sal_uInt16(i);
         VCLXAccessibleListItem* pItem = static_cast< VCLXAccessibleListItem* >(xChild.get());
@@ -605,27 +589,6 @@
 
 void VCLXAccessibleList::HandleChangedItemList (bool bItemInserted, sal_Int32 nIndex)
 {
-	// IAccessible2 implementation 2009
-	/*
-    if ( !bItemInserted )
-	{
-		if ( nIndex == -1 ) // special handling here
-		{
-			clearItems();
-		}
-		else
-		{
-			if ( nIndex >= 0 && static_cast<sal_uInt16>(nIndex) < m_aAccessibleChildren.size() )
-			{
-				ListItems::iterator aIter = m_aAccessibleChildren.erase(m_aAccessibleChildren.begin()+nIndex);
-            ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::DecrementIndexInParent);
-				adjustEntriesIndexInParent(	aIter, aTemp );
-			}
-		}
-	}
-	else
-		getAccessibleChild(nIndex);
-	*/	
 	clearItems();	
     NotifyAccessibleEvent (
         AccessibleEventId::INVALIDATE_ALL_CHILDREN,
@@ -1074,12 +1037,8 @@
 			if ( pBox )
 			{
 				Size aSize = pBox->GetSubEdit()->GetSizePixel();
-				// IAccessible2 implementation, 2009
-				//aBounds.X += aSize.Height();
-				//aBounds.Y += aSize.Width();
 				aBounds.Y += aSize.Height();
 				aBounds.Height -= aSize.Height();
-				//aBounds.Width  -= aSize.Width();
 			}
 		}
 	}
@@ -1107,8 +1066,6 @@
 			ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
 			if ( pBox )
 			{
-				//aPos.X += pBox->GetSubEdit()->GetSizePixel().Height();
-				//aPos.Y += pBox->GetSubEdit()->GetSizePixel().Width();
 				aPos.Y += pBox->GetSubEdit()->GetSizePixel().Height();
 			}
 		}
diff --git a/main/accessibility/source/standard/vclxaccessiblelistitem.cxx b/main/accessibility/source/standard/vclxaccessiblelistitem.cxx
index e52fde1..fdff723 100644
--- a/main/accessibility/source/standard/vclxaccessiblelistitem.cxx
+++ b/main/accessibility/source/standard/vclxaccessiblelistitem.cxx
@@ -318,7 +318,6 @@
 	{
         pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
 
-		// IAccessible2 implementation, 2009
 		if(m_pListBoxHelper->IsEnabled())	
 		{
 	    	pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
diff --git a/main/accessibility/source/standard/vclxaccessiblemenuitem.cxx b/main/accessibility/source/standard/vclxaccessiblemenuitem.cxx
index 2b9262d..652d283 100644
--- a/main/accessibility/source/standard/vclxaccessiblemenuitem.cxx
+++ b/main/accessibility/source/standard/vclxaccessiblemenuitem.cxx
@@ -465,9 +465,7 @@
 
 	if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
         throw IndexOutOfBoundsException();
-	//IAccessibility2 Impplementaton 2009-----
 	return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_SELECT ) );
-	//-----IAccessibility2 Impplementaton 2009
 }
 
 // -----------------------------------------------------------------------------
diff --git a/main/accessibility/source/standard/vclxaccessiblescrollbar.cxx b/main/accessibility/source/standard/vclxaccessiblescrollbar.cxx
index 0e62987..6515aea 100644
--- a/main/accessibility/source/standard/vclxaccessiblescrollbar.cxx
+++ b/main/accessibility/source/standard/vclxaccessiblescrollbar.cxx
@@ -276,7 +276,6 @@
 
 // -----------------------------------------------------------------------------
 
-// IAccessible2 implementation, 2009
 ::rtl::OUString VCLXAccessibleScrollBar::getAccessibleName(  ) throw (uno::RuntimeException)
 {
 	OExternalLockGuard aGuard( this );
diff --git a/main/accessibility/source/standard/vclxaccessibletabcontrol.cxx b/main/accessibility/source/standard/vclxaccessibletabcontrol.cxx
index 2929920..ba06dee 100644
--- a/main/accessibility/source/standard/vclxaccessibletabcontrol.cxx
+++ b/main/accessibility/source/standard/vclxaccessibletabcontrol.cxx
@@ -81,7 +81,6 @@
 
 void VCLXAccessibleTabControl::UpdateSelected( sal_Int32 i, bool bSelected )
 {
-	// IAccessible2 implementation, 2009
 	//NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
 
 	if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
diff --git a/main/autodoc/source/ary/cpp/namechain.cxx b/main/autodoc/source/ary/cpp/namechain.cxx
index 1f7f8b3..525d550 100644
--- a/main/autodoc/source/ary/cpp/namechain.cxx
+++ b/main/autodoc/source/ary/cpp/namechain.cxx
@@ -129,7 +129,7 @@
 List_TplParameter &
 NameChain::Templatize_LastSegment()
 {
-	csv_assert( aSegments.size() > 0 );
+	csv_assert( ! aSegments.empty() );
 
 	return aSegments.back().AddTemplate();
 }
@@ -158,7 +158,7 @@
 const String  &
 NameChain::LastSegment() const
 {
-	if ( aSegments.size() > 0 )
+	if ( ! aSegments.empty() )
 		return aSegments.back().Name();
 	return String::Null_();
 }
diff --git a/main/autodoc/source/display/html/easywri.cxx b/main/autodoc/source/display/html/easywri.cxx
index f736843..8b84917 100644
--- a/main/autodoc/source/display/html/easywri.cxx
+++ b/main/autodoc/source/display/html/easywri.cxx
@@ -53,7 +53,7 @@
 csi::xml::Element &
 EasyWriter::Out()
 {
-    csv_assert( aCurDestination.size() > 0);
+    csv_assert( ! aCurDestination.empty() );
     return *aCurDestination.top();
 }
 
diff --git a/main/autodoc/source/display/inc/toolkit/outputstack.hxx b/main/autodoc/source/display/inc/toolkit/outputstack.hxx
index 5219788..77178f6 100644
--- a/main/autodoc/source/display/inc/toolkit/outputstack.hxx
+++ b/main/autodoc/source/display/inc/toolkit/outputstack.hxx
@@ -57,7 +57,7 @@
 inline csi::xml::Element &
 OutputStack::Out() const
 {
-    csv_assert( aCurDestination.size() > 0 );
+    csv_assert( ! aCurDestination.empty() );
     return *aCurDestination.top();
 }
 
diff --git a/main/autodoc/source/parser/cpp/sownstck.hxx b/main/autodoc/source/parser/cpp/sownstck.hxx
index 7cdac5c..9983d0a 100644
--- a/main/autodoc/source/parser/cpp/sownstck.hxx
+++ b/main/autodoc/source/parser/cpp/sownstck.hxx
@@ -113,7 +113,7 @@
 ContextForAry::
 S_OwnerStack::CurNamespace() const
 {
-    csv_assert( aStack_Namespaces.size() > 0 );
+    csv_assert( ! aStack_Namespaces.empty() );
     return *aStack_Namespaces.top();
 }
 
@@ -204,7 +204,7 @@
 ContextForAry::
 S_OwnerStack::SetCurProtection( ary::cpp::E_Protection i_eProtection )
 {
-    csv_assert( aStack_Classes.size() > 0 );
+    csv_assert( ! aStack_Classes.empty() );
     aStack_Classes.top().second = i_eProtection;
 }
 
diff --git a/main/autodoc/source/parser_i/idl/distrib.cxx b/main/autodoc/source/parser_i/idl/distrib.cxx
index 70d27b3..97b6803 100644
--- a/main/autodoc/source/parser_i/idl/distrib.cxx
+++ b/main/autodoc/source/parser_i/idl/distrib.cxx
@@ -129,7 +129,7 @@
 UnoIDL_PE &
 TokenDistributor::ProcessingData::CurEnvironment() const
 {
-	csv_assert(aEnvironments.size() > 0);
+	csv_assert(!aEnvironments.empty());
 	csv_assert(aEnvironments.back().first != 0);
 
 	return *aEnvironments.back().first;
diff --git a/main/autodoc/source/parser_i/idl/pe_excp.cxx b/main/autodoc/source/parser_i/idl/pe_excp.cxx
index 49ad21a..9d60626 100644
--- a/main/autodoc/source/parser_i/idl/pe_excp.cxx
+++ b/main/autodoc/source/parser_i/idl/pe_excp.cxx
@@ -83,7 +83,7 @@
 {
 	if (NOT Work().bIsPreDeclaration)
 	{
-		csv_assert(Work().sData_Name.size() > 0);
+		csv_assert(! Work().sData_Name.empty());
 		csv_assert(Work().nCurStruct.IsValid());
 	}
 	Stati().pCurStatus = &Stati().aNone;
diff --git a/main/autodoc/source/parser_i/idl/pe_iface.cxx b/main/autodoc/source/parser_i/idl/pe_iface.cxx
index 553f643..fbbda3e 100644
--- a/main/autodoc/source/parser_i/idl/pe_iface.cxx
+++ b/main/autodoc/source/parser_i/idl/pe_iface.cxx
@@ -395,7 +395,7 @@
 {
 	if (NOT bIsPreDeclaration)
 	{
-		csv_assert(sData_Name.size() > 0);
+		csv_assert(!sData_Name.empty());
 		csv_assert(nCurInterface.IsValid());
 	}
 	else
diff --git a/main/autodoc/source/parser_i/idl/pe_servi.cxx b/main/autodoc/source/parser_i/idl/pe_servi.cxx
index 71b7bf8..e9c6f69 100644
--- a/main/autodoc/source/parser_i/idl/pe_servi.cxx
+++ b/main/autodoc/source/parser_i/idl/pe_servi.cxx
@@ -304,7 +304,7 @@
 {
 	if (NOT bIsPreDeclaration)
 	{
-		csv_assert(sData_Name.size() > 0);
+		csv_assert(! sData_Name.empty());
 		csv_assert( (pCurService != 0) != (pCurSiService != 0) );
 	}
 
diff --git a/main/autodoc/source/parser_i/idl/pe_singl.cxx b/main/autodoc/source/parser_i/idl/pe_singl.cxx
index 6b6895c..4cc8e07 100644
--- a/main/autodoc/source/parser_i/idl/pe_singl.cxx
+++ b/main/autodoc/source/parser_i/idl/pe_singl.cxx
@@ -225,7 +225,7 @@
 {
 	if (NOT bIsPreDeclaration)
 	{
-		csv_assert(sData_Name.size() > 0);
+		csv_assert(! sData_Name.empty());
 		csv_assert( (pCurSingleton != 0) != (pCurSiSingleton != 0) );
 	}
 
diff --git a/main/autodoc/source/parser_i/idl/pe_struc.cxx b/main/autodoc/source/parser_i/idl/pe_struc.cxx
index 4bd2fae..1e9bc3d 100644
--- a/main/autodoc/source/parser_i/idl/pe_struc.cxx
+++ b/main/autodoc/source/parser_i/idl/pe_struc.cxx
@@ -82,7 +82,7 @@
 {
     if (NOT Work().bIsPreDeclaration)
     {
-        csv_assert(Work().sData_Name.size() > 0);
+        csv_assert(! Work().sData_Name.empty());
         csv_assert(Work().nCurStruct.IsValid());
     }
     Stati().pCurStatus = &Stati().aNone;
diff --git a/main/basegfx/source/tools/debugplotter.cxx b/main/basegfx/source/tools/debugplotter.cxx
index c72f229..e22908e 100644
--- a/main/basegfx/source/tools/debugplotter.cxx
+++ b/main/basegfx/source/tools/debugplotter.cxx
@@ -45,7 +45,7 @@
                     "#" << ::std::endl <<
                     "# automatically generated by basegfx, don't change!" << ::std::endl <<
                     "#" << ::std::endl <<
-                    "#   --- " << (const sal_Char*)rTitle << " ---" << ::std::endl <<
+                    "#   --- " << rTitle.getStr() << " ---" << ::std::endl <<
                     "#" << ::std::endl <<
                     "set parametric" << ::std::endl <<
                     "# set terminal postscript eps enhanced color " << ::std::endl <<
@@ -106,7 +106,7 @@
                            "pointmarkx(c,t) = c-0.03*t\n",										 // hack for displaying single points in parametric form
                            "pointmarky(c,t) = c+0.03*t\n",										 // hack for displaying single points in parametric form
                            "# end of setup\n",
-                           (const sal_Char*)rTitle );
+                           rTitle.getStr() );
             }
         }
 
@@ -276,10 +276,10 @@
                         
                         if( mpOutputStream )
                             *mpOutputStream << " '-' using ($1):($2) title \"Polygon "
-                                            << (const sal_Char*)maPolygons.at(i).second << "\" with lp";
+                                            << maPolygons.at(i).second.getStr() << "\" with lp";
                         else
                             OSL_TRACE( " '-' using ($1):($2) title \"Polygon %s\" with lp",
-                                       (const sal_Char*)maPolygons.at(i).second );
+                                       maPolygons.at(i).second.getStr() );
 
                         bNeedColon = true;
                     }
diff --git a/main/chart2/source/controller/accessibility/AccessibleBase.cxx b/main/chart2/source/controller/accessibility/AccessibleBase.cxx
index dbf7b4e..f80ef72 100644
--- a/main/chart2/source/controller/accessibility/AccessibleBase.cxx
+++ b/main/chart2/source/controller/accessibility/AccessibleBase.cxx
@@ -651,9 +651,7 @@
 sal_Int16 SAL_CALL AccessibleBase::getAccessibleRole()
     throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
     return AccessibleRole::SHAPE/*LIST_ITEM*/; // #i73747# role SHAPE seems more appropriate, but is not read
-	//-----IAccessibility2 Implementation 2009
 }
 
 Reference< XAccessibleRelationSet > SAL_CALL AccessibleBase::getAccessibleRelationSet()
diff --git a/main/chart2/source/controller/dialogs/res_LegendPosition.hxx b/main/chart2/source/controller/dialogs/res_LegendPosition.hxx
index dab121d..45101ef 100644
--- a/main/chart2/source/controller/dialogs/res_LegendPosition.hxx
+++ b/main/chart2/source/controller/dialogs/res_LegendPosition.hxx
@@ -63,8 +63,7 @@
     DECL_LINK( PositionEnableHdl, void* );
     DECL_LINK( PositionChangeHdl, RadioButton* );
 
-    void SetAccessibleRelationMemberOf(Window* pMemberOf); //IAccessibility2 Implementation 2009-----
-
+    void SetAccessibleRelationMemberOf(Window* pMemberOf);
 private:
     void impl_setRadioButtonToggleHdl();
 
diff --git a/main/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hrc b/main/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hrc
index b1d436d..b3d527d 100644
--- a/main/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hrc
+++ b/main/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hrc
@@ -38,7 +38,5 @@
 #define BTN_LIGHT_6           8
 #define BTN_LIGHT_7           9
 #define BTN_LIGHT_8           10
-//IAccessibility2 Implementation 2009-----
 #define STR_LIGHT_PREVIEW     6000
-//-----IAccessibility2 Implementation 2009
 #define CTL_LIGHT_PREVIEW     1
diff --git a/main/chart2/source/controller/dialogs/tp_DataSource.cxx b/main/chart2/source/controller/dialogs/tp_DataSource.cxx
index 21ee6cf..f5ce985 100644
--- a/main/chart2/source/controller/dialogs/tp_DataSource.cxx
+++ b/main/chart2/source/controller/dialogs/tp_DataSource.cxx
@@ -69,13 +69,7 @@
 String lcl_GetRoleLBEntry(
     const OUString & rRole, const OUString & rRange )
 {
-//IAccessibility2 Implementation 2009-----
-    //String aEntry( rRole );
-    //aEntry += '\t';
-    //aEntry += String(
-    //    ::chart::DialogModel::ConvertRoleFromInternalToUI( rRole ));
     String aEntry(::chart::DialogModel::ConvertRoleFromInternalToUI( rRole ));
-	//-----IAccessibility2 Implementation 2009
     aEntry += '\t';
     aEntry += String( rRange );
 
@@ -142,12 +136,10 @@
     return aResult;
 }
 
-//IAccessibility2 Implementation 2009-----
 static long lcl_pRoleListBoxTabs[] =
 	{	2,        // Number of Tabs
 		0, 75
 	};
-//-----IAccessibility2 Implementation 2009
 
 void lcl_ShowChooserButton(
     ::chart::RangeSelectionButton & rChooserButton,
diff --git a/main/chart2/source/inc/Strings.hrc b/main/chart2/source/inc/Strings.hrc
index be45183..bd9a205 100644
--- a/main/chart2/source/inc/Strings.hrc
+++ b/main/chart2/source/inc/Strings.hrc
@@ -338,10 +338,8 @@
 #define STR_TEXT_DIRECTION_RTL              (RID_APP_START + 279)
 #define STR_TEXT_DIRECTION_SUPER            (RID_APP_START + 280)
 
-//IAccessibility2 Implementation 2009-----
 #define STR_BUTTON_UP						(RID_APP_START + 500)
 #define STR_BUTTON_DOWN						(RID_APP_START + 501)
-//-----IAccessibility2 Implementation 2009
 //-----------------------------------------------------------------------------
 /*
 ////#define STR_DIAGRAM_X_AXIS					(RID_APP_START + 34)
diff --git a/main/cli_ure/source/climaker/climaker_app.cxx b/main/cli_ure/source/climaker/climaker_app.cxx
index fee0074..729eab0 100644
--- a/main/cli_ure/source/climaker/climaker_app.cxx
+++ b/main/cli_ure/source/climaker/climaker_app.cxx
@@ -567,7 +567,7 @@
         // setup assembly info: xxx todo set more? e.g. avoid strong versioning
         AssemblyName * assembly_name = new AssemblyName();
         assembly_name->set_CodeBase( output_dir );
-        assembly_name->set_Name( name );
+        assembly_name->set_Name( name.getStr() );
         if (kp != NULL)
             assembly_name->set_KeyPair(kp);
         
diff --git a/main/cli_ure/source/uno_bridge/cli_data.cxx b/main/cli_ure/source/uno_bridge/cli_data.cxx
index d8c0653..2d4d865 100644
--- a/main/cli_ure/source/uno_bridge/cli_data.cxx
+++ b/main/cli_ure/source/uno_bridge/cli_data.cxx
@@ -598,7 +598,7 @@
 			index = cur;
             if (bCliToUno)
             {
-                builder->Append(mapCliTypeName(sParam));
+                builder->Append( mapCliTypeName(sParam).getStr());
             }
             else
             {
diff --git a/main/comphelper/source/misc/namedvaluecollection.cxx b/main/comphelper/source/misc/namedvaluecollection.cxx
index 282d756..ed3fe56 100644
--- a/main/comphelper/source/misc/namedvaluecollection.cxx
+++ b/main/comphelper/source/misc/namedvaluecollection.cxx
@@ -222,7 +222,7 @@
                 ::rtl::OStringBuffer message;
                 message.append( "NamedValueCollection::impl_assign: encountered a value type which I cannot handle:\n" );
                 message.append( ::rtl::OUStringToOString( pArgument->getValueTypeName(), RTL_TEXTENCODING_ASCII_US ) );
-                OSL_ENSURE( false, message.makeStringAndClear() );
+                OSL_ENSURE( false, message.getStr() );
             }
 #endif
         }
diff --git a/main/connectivity/inc/connectivity/CommonTools.hxx b/main/connectivity/inc/connectivity/CommonTools.hxx
index 95130b0..85384b5 100644
--- a/main/connectivity/inc/connectivity/CommonTools.hxx
+++ b/main/connectivity/inc/connectivity/CommonTools.hxx
@@ -49,6 +49,10 @@
 {
 	//------------------------------------------------------------------------------
 	OOO_DLLPUBLIC_DBTOOLS sal_Bool match(const sal_Unicode* pWild, const sal_Unicode* pStr, const sal_Unicode cEscape);
+	inline sal_Bool match( const rtl::OUString& rWild, const sal_Unicode* pStr, sal_Unicode cEscape)
+		{ return match( rWild.getStr(), pStr, cEscape); }
+	inline sal_Bool match( const rtl::OUString& rWild, const rtl::OUString& rStr, sal_Unicode cEscape)
+		{ return match( rWild, rStr.getStr(), cEscape); }
 	//------------------------------------------------------------------------------
 	OOO_DLLPUBLIC_DBTOOLS rtl::OUString toString(const ::com::sun::star::uno::Any& rValue);
 	OOO_DLLPUBLIC_DBTOOLS rtl::OUString toDateString(const ::com::sun::star::util::Date& rDate);
diff --git a/main/connectivity/source/commontools/CommonTools.cxx b/main/connectivity/source/commontools/CommonTools.cxx
index 79efbbe..13a882c 100644
--- a/main/connectivity/source/commontools/CommonTools.cxx
+++ b/main/connectivity/source/commontools/CommonTools.cxx
@@ -280,7 +280,7 @@
 			{
 				::rtl::OString sClassName = ::rtl::OUStringToOString(_sClassName, RTL_TEXTENCODING_ASCII_US);
 				sClassName = sClassName.replace('.','/');
-				jobject out = pEnv->FindClass(sClassName);
+				jobject out = pEnv->FindClass( sClassName.getStr());
 				bRet = out != NULL;
 				pEnv->DeleteLocalRef( out );
 			}
diff --git a/main/connectivity/source/drivers/adabas/BConnection.cxx b/main/connectivity/source/drivers/adabas/BConnection.cxx
index 5cef05e..313156c 100644
--- a/main/connectivity/source/drivers/adabas/BConnection.cxx
+++ b/main/connectivity/source/drivers/adabas/BConnection.cxx
@@ -108,8 +108,8 @@
 	}
 	m_sUser = aUID;
 
-	if ( sHostName.getLength() )
-		aDSN = sHostName + ':' + aDSN;
+	if( !sHostName.isEmpty() )
+		aDSN = sHostName + ::rtl::OUString::createFromAscii(":") + aDSN;
 	SQLRETURN nSQLRETURN = openConnectionWithAuth(aDSN,nTimeout, aUID,aPWD);
 
 	return nSQLRETURN;
diff --git a/main/connectivity/source/drivers/adabas/BDriver.cxx b/main/connectivity/source/drivers/adabas/BDriver.cxx
index cbdf16d..88a0818 100644
--- a/main/connectivity/source/drivers/adabas/BDriver.cxx
+++ b/main/connectivity/source/drivers/adabas/BDriver.cxx
@@ -44,6 +44,9 @@
 #include <memory>
 #include <sys/stat.h>
 
+inline SvStream& operator<<( SvStream& s, const rtl::OString r) { return (s << r.getStr()); }
+inline SvStream& operator<<( SvStream& s, const rtl::OUString r) { return (s << ::rtl::OUStringToOString(r,gsl_getSystemTextEncoding())); }
+
 #if defined(UNX)
 const char sNewLine = '\012';
 #else
@@ -959,7 +962,7 @@
 		{
 			::std::auto_ptr<SvStream> pFileStream( UcbStreamHelper::CreateStream(aInitFile.GetURL(),STREAM_WRITE) );
 			(*pFileStream)	<< "ALTER USER \""
-							<< ::rtl::OString(_aInfo.sSysUser,_aInfo.sSysUser.getLength(),gsl_getSystemTextEncoding())
+							<< _aInfo.sSysUser
 							<< "\" NOT EXCLUSIVE "
 							<< sNewLine;
 			pFileStream->Flush();
@@ -989,13 +992,13 @@
 						<< ".exe"
 #endif
 						<< " -d "
-						<< ::rtl::OString(_DBNAME,_DBNAME.getLength(),gsl_getSystemTextEncoding())
+						<< _DBNAME
 						<< " -u "
-						<< ::rtl::OString(_USR,_USR.getLength(),gsl_getSystemTextEncoding())
+						<< _USR
 						<< ","
-						<< ::rtl::OString(_PWD,_PWD.getLength(),gsl_getSystemTextEncoding())
+						<< _PWD
 						<< " "
-						<< ::rtl::OString(_CMD,_CMD.getLength(),gsl_getSystemTextEncoding())
+						<< _CMD
 #if defined(WNT)
 #if (OSL_DEBUG_LEVEL > 1) || defined(DBG_UTIL)
 						<< " >> %DBWORK%\\create.log 2>&1"
@@ -1197,15 +1200,15 @@
 							"utility"
 #endif
 						<< " -u "
-						<< ::rtl::OString(_USRNAME,_USRNAME.getLength(),gsl_getSystemTextEncoding())
+						<< _USRNAME
 						<< ","
-						<< ::rtl::OString(_USRPWD,_USRPWD.getLength(),gsl_getSystemTextEncoding())
+						<< _USRPWD
 						<< " -d "
-						<< ::rtl::OString(_DBNAME,_DBNAME.getLength(),gsl_getSystemTextEncoding())
+						<< _DBNAME
 						<< " "
-						<< ::rtl::OString(_rParam,_rParam.getLength(),gsl_getSystemTextEncoding())
+						<< _rParam
 						<< " > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< " 2>&1"
 						<< sNewLine;
 		pFileStream->Flush();
@@ -1248,20 +1251,20 @@
 						<< ".exe"
 #endif
 						<< " -d "
-						<< ::rtl::OString(sDBName,sDBName.getLength(),gsl_getSystemTextEncoding())
+						<< sDBName
 						<< " -u "
-						<< ::rtl::OString(_rUSR,_rUSR.getLength(),gsl_getSystemTextEncoding())
+						<< _rUSR
 						<< ","
-						<< ::rtl::OString(_rPWD,_rPWD.getLength(),gsl_getSystemTextEncoding());
+						<< _rPWD;
 						
 		if ( !isKernelVersion(CURRENT_DB_VERSION) )
 			(*pFileStream) << " -S adabas -b ";
 		else
 			(*pFileStream) << " -S NATIVE -b ";
 
-		(*pFileStream)	<< ::rtl::OString(_rBatch,_rBatch.getLength(),gsl_getSystemTextEncoding())
+		(*pFileStream)	<< _rBatch
 						<< " > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< " 2>&1"
 						<< sNewLine;
 
@@ -1378,7 +1381,7 @@
 		{
 			String sTemp;
 			LocalFileHelper::ConvertURLToPhysicalName(_aDBInfo.sSysDevSpace,sTemp);
-			(*pFileStream) << ::rtl::OString(sTemp.GetBuffer(),sTemp.Len(),gsl_getSystemTextEncoding());
+			(*pFileStream) << sTemp;
 		}
 		(*pFileStream) << "\n* log devspace size:\n";
 		(*pFileStream) << ::rtl::OString::valueOf(_aDBInfo.nLogSize);
@@ -1386,7 +1389,7 @@
 		{
 			String sTemp;
 			LocalFileHelper::ConvertURLToPhysicalName(_aDBInfo.sTransLogName,sTemp);
-			(*pFileStream) << ::rtl::OString(sTemp.GetBuffer(),sTemp.Len(),gsl_getSystemTextEncoding());
+			(*pFileStream) << sTemp;
 		}
 		(*pFileStream) << "\n* data devspace size:\n";
 		(*pFileStream) << ::rtl::OString::valueOf(_aDBInfo.nDataSize);
@@ -1394,7 +1397,7 @@
 		{
 			String sTemp;
 			LocalFileHelper::ConvertURLToPhysicalName(_aDBInfo.sDataDevName,sTemp);
-			(*pFileStream) << ::rtl::OString(sTemp.GetBuffer(),sTemp.Len(),gsl_getSystemTextEncoding());
+			(*pFileStream) << sTemp;
 		}
 
 		(*pFileStream) << "\n* END INIT CONFIG\n";
@@ -1405,7 +1408,7 @@
 			{
 				String sTemp;
 				LocalFileHelper::ConvertURLToPhysicalName(_aDBInfo.sBackupFile,sTemp);
-				(*pFileStream) << ::rtl::OString(sTemp.GetBuffer(),sTemp.Len(),gsl_getSystemTextEncoding());
+				(*pFileStream) << sTemp;
 			}
 			(*pFileStream) << "' BLOCKSIZE 8\n";
 			(*pFileStream) << "if $rc <> 0 then stop\n";
@@ -1415,9 +1418,9 @@
 		else
 		{
 			(*pFileStream) << "ACTIVATE SERVERDB SYSDBA \"";
-			(*pFileStream) << ::rtl::OString(_aDBInfo.sSysUser,_aDBInfo.sSysUser.getLength(),gsl_getSystemTextEncoding());
+			(*pFileStream) << _aDBInfo.sSysUser;
 			(*pFileStream) << "\" PASSWORD \"";
-			(*pFileStream) << ::rtl::OString(_aDBInfo.sSysPassword,_aDBInfo.sSysPassword.getLength(),gsl_getSystemTextEncoding());
+			(*pFileStream) << _aDBInfo.sSysPassword;
 			(*pFileStream) << "\"\n";
 		}
 		(*pFileStream) << "if $rc <> 0 then stop\n";
@@ -1441,11 +1444,11 @@
 						<< ".exe"
 #endif
 						<< " "
-						<< ::rtl::OString(sDBName,sDBName.getLength(),gsl_getSystemTextEncoding())
+						<< sDBName
 						<< " SHOW "
 						<< _ACTION
 						<< " > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< sNewLine;
 		pFileStream->Flush();
 	}
@@ -1524,9 +1527,9 @@
 						<< ".exe"
 #endif
 						<< " "
-						<< ::rtl::OString(sDBName,sDBName.getLength(),gsl_getSystemTextEncoding())
+						<< sDBName
 						<< " KERNELVERSION > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< sNewLine;
 	}
 
@@ -1574,9 +1577,9 @@
 						<< ".exe"
 #endif
 						<< " "
-						<< ::rtl::OString(sDBName,sDBName.getLength(),gsl_getSystemTextEncoding())
+						<< sDBName
 						<< " DATA_CACHE_PAGES > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< sNewLine;
 	}
 
@@ -1621,7 +1624,7 @@
 
 		(*pFileStream)	<< "dbversion"
 						<< " > "
-						<< ::rtl::OString(sPhysicalPath.GetBuffer(),sPhysicalPath.Len(),gsl_getSystemTextEncoding())
+						<< sPhysicalPath
 						<< sNewLine;
 	}
 
@@ -1731,13 +1734,13 @@
 		pFileStream->Seek(STREAM_SEEK_TO_END);
 		(*pFileStream)	<< "x_dbinst"
 						<< " -d "
-						<< ::rtl::OString(_aInfo.sDBName,_aInfo.sDBName.getLength(),gsl_getSystemTextEncoding())
+						<< _aInfo.sDBName
 						<< " -u "
-						<< ::rtl::OString(_aInfo.sSysUser,_aInfo.sSysUser.getLength(),gsl_getSystemTextEncoding())
+						<< _aInfo.sSysUser
 						<< ","
-						<< ::rtl::OString(_aInfo.sSysPassword,_aInfo.sSysPassword.getLength(),gsl_getSystemTextEncoding())
+						<< _aInfo.sSysPassword
 						<< " -w "
-						<< ::rtl::OString(_aInfo.sDomainPassword,_aInfo.sDomainPassword.getLength(),gsl_getSystemTextEncoding())
+						<< _aInfo.sDomainPassword
 						<< " -b ";
 
 		if ( isKernelVersion(ADABAS_KERNEL_11) )
diff --git a/main/connectivity/source/drivers/jdbc/Class.cxx b/main/connectivity/source/drivers/jdbc/Class.cxx
index 4aab1b4..2ea8754 100644
--- a/main/connectivity/source/drivers/jdbc/Class.cxx
+++ b/main/connectivity/source/drivers/jdbc/Class.cxx
@@ -53,7 +53,7 @@
 	{
 		::rtl::OString sClassName = ::rtl::OUStringToOString(_par0, RTL_TEXTENCODING_JAVA_UTF8);
 		sClassName = sClassName.replace('.','/');
-		out = t.pEnv->FindClass(sClassName);
+		out = t.pEnv->FindClass( sClassName.getStr());
 		ThrowSQLException(t.pEnv,0);
 	} //t.pEnv
 	// ACHTUNG: der Aufrufer wird Eigentuemer des zurueckgelieferten Zeigers !!!
diff --git a/main/connectivity/source/drivers/odbcbase/ODatabaseMetaDataResultSet.cxx b/main/connectivity/source/drivers/odbcbase/ODatabaseMetaDataResultSet.cxx
index d5a98f2..a8fcaa5 100644
--- a/main/connectivity/source/drivers/odbcbase/ODatabaseMetaDataResultSet.cxx
+++ b/main/connectivity/source/drivers/odbcbase/ODatabaseMetaDataResultSet.cxx
@@ -879,7 +879,7 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(tableNamePattern,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(tableNamePattern,m_nTextEncoding)).getStr();
 
 
 	const char	*pCOL = NULL;
@@ -981,8 +981,8 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(table,m_nTextEncoding).getStr(),
-				*pCOL = aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(table,m_nTextEncoding)).getStr(),
+				*pCOL = (aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding)).getStr();
 
 
 	SQLRETURN nRetcode = N3SQLColumnPrivileges(m_aStatementHandle,
@@ -1014,8 +1014,8 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(tableNamePattern,m_nTextEncoding).getStr(),
-				*pCOL = aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(tableNamePattern,m_nTextEncoding)).getStr(),
+				*pCOL = (aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding)).getStr();
 
 
 	SQLRETURN nRetcode = N3SQLColumns(m_aStatementHandle,
@@ -1081,8 +1081,8 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(procedureNamePattern,m_nTextEncoding).getStr(),
-				*pCOL = aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(procedureNamePattern,m_nTextEncoding)).getStr(),
+				*pCOL = (aCOL = ::rtl::OUStringToOString(columnNamePattern,m_nTextEncoding)).getStr();
 
 
 	SQLRETURN nRetcode = N3SQLProcedureColumns(m_aStatementHandle,
@@ -1115,7 +1115,7 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(procedureNamePattern,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(procedureNamePattern,m_nTextEncoding)).getStr();
 
 
 	SQLRETURN nRetcode = N3SQLProcedures(m_aStatementHandle,
@@ -1145,7 +1145,7 @@
 
 	const char	*pPKQ = catalog.hasValue() && aPKQ.getLength() ? aPKQ.getStr()	: NULL,
 				*pPKO = pSchemaPat && pSchemaPat->getLength() ? aPKO.getStr() : NULL,
-				*pPKN = aPKN = ::rtl::OUStringToOString(table,m_nTextEncoding).getStr();
+				*pPKN = (aPKN = ::rtl::OUStringToOString(table,m_nTextEncoding)).getStr();
 
 
 	SQLRETURN nRetcode = N3SQLSpecialColumns(m_aStatementHandle,_bRowVer ? SQL_ROWVER : SQL_BEST_ROWID,
diff --git a/main/connectivity/source/parse/sqlflex.l b/main/connectivity/source/parse/sqlflex.l
index 042084c..304a4e1 100644
--- a/main/connectivity/source/parse/sqlflex.l
+++ b/main/connectivity/source/parse/sqlflex.l
@@ -784,7 +784,7 @@
 	BEGIN(m_nRule);
 
 	m_sErrorMessage = ::rtl::OUString();	
-	m_sStatement	= ::rtl::OString(rNewStatement,rNewStatement.getLength(), RTL_TEXTENCODING_UTF8);
+	m_sStatement	= ::rtl::OUStringToOString( rNewStatement, RTL_TEXTENCODING_UTF8);
 	m_nCurrentPos	= 0;
 	m_bInternational = bInternational;
 	m_pContext		= pContext;
diff --git a/main/connectivity/source/parse/sqlnode.cxx b/main/connectivity/source/parse/sqlnode.cxx
index faa2309..dbda62d 100644
--- a/main/connectivity/source/parse/sqlnode.cxx
+++ b/main/connectivity/source/parse/sqlnode.cxx
@@ -1576,7 +1576,7 @@
                              SQLNodeType eNewNodeType,
                              sal_uInt32 nNewNodeID)
         :m_pParent(NULL)
-        ,m_aNodeValue(_rNewValue,_rNewValue.getLength(),RTL_TEXTENCODING_UTF8)
+        ,m_aNodeValue( rtl::OStringToOUString( _rNewValue, RTL_TEXTENCODING_UTF8))
         ,m_eNodeType(eNewNodeType)
         ,m_nNodeID(nNewNodeID)
 {
@@ -2465,7 +2465,7 @@
                 rString.appendAscii(" ");
 
             const ::rtl::OString sT = OSQLParser::TokenIDToStr(m_nNodeID, rParam.bInternational ? &rParam.m_rContext :  NULL);
-            rString.append(::rtl::OUString(sT,sT.getLength(),RTL_TEXTENCODING_UTF8));
+            rString.append( ::rtl::OStringToOUString( sT, RTL_TEXTENCODING_UTF8));
         }   break;
         case SQL_NODE_STRING:
             if (rString.getLength())
@@ -2550,7 +2550,7 @@
 sal_Int32 OSQLParser::getFunctionReturnType(const ::rtl::OUString& _sFunctionName, const IParseContext* pContext)
 {
     sal_Int32 nType = DataType::VARCHAR;
-    ::rtl::OString sFunctionName(_sFunctionName,_sFunctionName.getLength(),RTL_TEXTENCODING_UTF8);
+    ::rtl::OString sFunctionName( rtl::OUStringToOString( _sFunctionName, RTL_TEXTENCODING_UTF8));
 
     if(sFunctionName.equalsIgnoreAsciiCase(TokenIDToStr(SQL_TOKEN_ASCII,pContext)))                     nType = DataType::INTEGER;
     else if(sFunctionName.equalsIgnoreAsciiCase(TokenIDToStr(SQL_TOKEN_BIT_LENGTH,pContext)))           nType = DataType::INTEGER;
diff --git a/main/cui/source/customize/cfg.cxx b/main/cui/source/customize/cfg.cxx
index 86c5371..aeff5a1 100644
--- a/main/cui/source/customize/cfg.cxx
+++ b/main/cui/source/customize/cfg.cxx
@@ -1662,7 +1662,6 @@
     aDescriptionField.SetControlBackground( GetSettings().GetStyleSettings().GetDialogColor() );
     aDescriptionField.SetAutoScroll( sal_True );
     aDescriptionField.EnableCursor( sal_False );
-	//IAccessibility2 Implementation 2009-----
 	aMoveUpButton.SetAccessibleName(String(CUI_RES(BUTTON_STR_UP)));
 	aMoveDownButton.SetAccessibleName(String(CUI_RES(BUTTON_STR_DOWN)));
 	aMoveUpButton.SetAccessibleRelationMemberOf(&aContentsSeparator);
@@ -1671,7 +1670,6 @@
 	aModifyTopLevelButton.SetAccessibleRelationMemberOf(&aTopLevelSeparator);
 	aAddCommandsButton.SetAccessibleRelationMemberOf(&aContentsSeparator);
 	aModifyCommandButton.SetAccessibleRelationMemberOf(&aContentsSeparator);
-	//-----IAccessibility2 Implementation 2009
 }
 
 SvxConfigPage::~SvxConfigPage()
@@ -2930,10 +2928,8 @@
 		LINK( this, SvxMainMenuOrganizerDialog, MoveHdl) );
 	aMoveDownButton.SetClickHdl	(
 		LINK( this, SvxMainMenuOrganizerDialog, MoveHdl) );
-	//IAccessibility2 Implementation 2009-----
 	aMoveUpButton.SetAccessibleName(String(CUI_RES(BUTTON_STR_UP)));
 	aMoveDownButton.SetAccessibleName(String(CUI_RES(BUTTON_STR_DOWN)));
-	//-----IAccessibility2 Implementation 2009
 }
 
 IMPL_LINK(SvxMainMenuOrganizerDialog, ModifyHdl, Edit*, pEdit)
diff --git a/main/cui/source/customize/cfg.hrc b/main/cui/source/customize/cfg.hrc
index 0b12e6b..bec1ddf 100644
--- a/main/cui/source/customize/cfg.hrc
+++ b/main/cui/source/customize/cfg.hrc
@@ -100,7 +100,5 @@
 #define MD_BTN_OK (122 + CFG_OFFSET)
 #define FI_INFO (123 + CFG_OFFSET)
 
-//IAccessibility2 Implementation 2009-----
 #define BUTTON_STR_UP	(130 + CFG_OFFSET)
 #define BUTTON_STR_DOWN	(131 + CFG_OFFSET)
-//-----IAccessibility2 Implementation 2009
diff --git a/main/cui/source/customize/cfg.src b/main/cui/source/customize/cfg.src
index 2bb1bac..231000b 100644
--- a/main/cui/source/customize/cfg.src
+++ b/main/cui/source/customize/cfg.src
@@ -822,7 +822,6 @@
 {
 	Text [ en-US ] = "Rename Toolbar";
 };
-//IAccessibility2 Implementation 2009-----
 String BUTTON_STR_UP
 {
 	Text [ en-US ] = "Up";
@@ -831,5 +830,4 @@
 {
 	Text [ en-US ] = "Down";
 };
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/cui/source/customize/macropg.cxx b/main/cui/source/customize/macropg.cxx
index 78e5885..7f6cefe 100644
--- a/main/cui/source/customize/macropg.cxx
+++ b/main/cui/source/customize/macropg.cxx
@@ -162,8 +162,8 @@
 
 _HeaderTabListBox::_HeaderTabListBox( Window* pParent, const ResId& rId ) :
     Control( pParent, rId ),
-    maListBox( this, WB_HSCROLL | WB_CLIPCHILDREN | WB_TABSTOP ),
-    maHeaderBar( this, WB_BUTTONSTYLE | WB_BOTTOMBORDER )
+    maHeaderBar( this, WB_BUTTONSTYLE | WB_BOTTOMBORDER ),
+    maListBox( this, WB_HSCROLL | WB_CLIPCHILDREN | WB_TABSTOP )
 {
     maListBox.SetHelpId( HID_MACRO_HEADERTABLISTBOX );
 
diff --git a/main/cui/source/dialogs/cuicharmap.cxx b/main/cui/source/dialogs/cuicharmap.cxx
index a15ea30..f56749f 100644
--- a/main/cui/source/dialogs/cuicharmap.cxx
+++ b/main/cui/source/dialogs/cuicharmap.cxx
@@ -257,7 +257,12 @@
 
 SvxCharMapData::SvxCharMapData( SfxModalDialog* pDialog, sal_Bool bOne_, ResMgr* pResContext )
 :   mpDialog( pDialog ),
+    aFontText       ( pDialog, ResId( FT_FONT, *pResContext ) ),
+    aFontLB         ( pDialog, ResId( LB_FONT, *pResContext ) ),
+    aSubsetText     ( pDialog, ResId( FT_SUBSET, *pResContext ) ),
+    aSubsetLB       ( pDialog, ResId( LB_SUBSET, *pResContext ) ),
     aShowSet        ( pDialog, ResId( CT_SHOWSET, *pResContext ) ),
+    aSymbolText     ( pDialog, ResId( FT_SYMBOLE, *pResContext ) ),
     aShowText       ( pDialog, ResId( CT_SHOWTEXT, *pResContext ) ),
 //    aShowShortcut   ( pDialog, ResId( CT_ASSIGN, *pResContext ) ),
     aOKBtn          ( pDialog, ResId( BTN_CHAR_OK, *pResContext ) ),
@@ -265,11 +270,6 @@
     aHelpBtn        ( pDialog, ResId( BTN_CHAR_HELP, *pResContext ) ),
     aDeleteBtn      ( pDialog, ResId( BTN_DELETE, *pResContext ) ),
 //    aAssignBtn      ( pDialog, ResId( BT_ASSIGN, *pResContext ) ),
-    aFontText       ( pDialog, ResId( FT_FONT, *pResContext ) ),
-    aFontLB         ( pDialog, ResId( LB_FONT, *pResContext ) ),
-    aSubsetText     ( pDialog, ResId( FT_SUBSET, *pResContext ) ),
-    aSubsetLB       ( pDialog, ResId( LB_SUBSET, *pResContext ) ),
-    aSymbolText     ( pDialog, ResId( FT_SYMBOLE, *pResContext ) ),
     aShowChar       ( pDialog, ResId( CT_SHOWCHAR, *pResContext ), sal_True ),
     aCharCodeText   ( pDialog, ResId( FT_CHARCODE, *pResContext ) ),
 //    aAssignText     ( pDialog, ResId( FT_ASSIGN, *pResContext ) ),
diff --git a/main/cui/source/dialogs/cuigrfflt.cxx b/main/cui/source/dialogs/cuigrfflt.cxx
index 47cb390..3bd739d 100644
--- a/main/cui/source/dialogs/cuigrfflt.cxx
+++ b/main/cui/source/dialogs/cuigrfflt.cxx
@@ -534,9 +534,6 @@
 
 	maCbxInvert.Check( bInvert );
 	maCbxInvert.SetToggleHdl( GetModifyHdl() );
-
-	// IAccessibility2 Implementation 2009
-	// maMtrThreshold.GrabFocus();
 }
 
 // -----------------------------------------------------------------------------
@@ -595,9 +592,6 @@
 
 	maMtrSepia.SetValue( nSepiaPercent );
 	maMtrSepia.SetModifyHdl( GetModifyHdl() );
-
-	// IAccessibility2 Implementation 2009
-	// maMtrSepia.GrabFocus();
 }
 
 // -----------------------------------------------------------------------------
@@ -648,9 +642,6 @@
     maNumPoster.SetLast( rGraphic.GetBitmapEx().GetBitCount() );
 	maNumPoster.SetValue( nPosterCount );
 	maNumPoster.SetModifyHdl( GetModifyHdl() );
-
-	// IAccessibility2 Implementation 2009
-	// maNumPoster.GrabFocus();
 }
 
 // -----------------------------------------------------------------------------
diff --git a/main/cui/source/dialogs/hlmarkwn.hrc b/main/cui/source/dialogs/hlmarkwn.hrc
index 565fbf9..aa14be3 100644
--- a/main/cui/source/dialogs/hlmarkwn.hrc
+++ b/main/cui/source/dialogs/hlmarkwn.hrc
@@ -24,9 +24,7 @@
 #define BT_APPLY	1
 #define BT_CLOSE	2
 #define TLB_MARK	3
-// IAccessibility2 implementation 2009. ------
 #define STR_MARK_TREE	5000
-// ------ IAccessibility2 implementation 2009.
 
 //#define HYPERLINK_BMP_EXPAND		301
 //#define HYPERLINK_BMP_COLLAPSE	302
diff --git a/main/cui/source/dialogs/linkdlg.cxx b/main/cui/source/dialogs/linkdlg.cxx
index 163aacf..92867dc 100644
--- a/main/cui/source/dialogs/linkdlg.cxx
+++ b/main/cui/source/dialogs/linkdlg.cxx
@@ -113,12 +113,10 @@
     //JP 24.02.99: UpdateTimer fuer DDE-/Grf-Links, auf die gewarted wird
     aUpdateTimer.SetTimeoutHdl( LINK( this, SvBaseLinksDlg, UpdateWaitingHdl ) );
     aUpdateTimer.SetTimeout( 1000 );
-	//IAccessibility2 Implementation 2009-----
 	// Set the ZOrder, and accessible name to the dialog's title	
 	aTbLinks.SetZOrder(0, WINDOW_ZORDER_FIRST);
 	aTbLinks.SetAccessibleName(this->GetText());
 	aTbLinks.SetAccessibleRelationLabeledBy(&aFtFiles);
-	//-----IAccessibility2 Implementation 2009
 
     OpenSource().Hide();
 
diff --git a/main/cui/source/dialogs/showcols.cxx b/main/cui/source/dialogs/showcols.cxx
index b6ca973..1f32062 100644
--- a/main/cui/source/dialogs/showcols.cxx
+++ b/main/cui/source/dialogs/showcols.cxx
@@ -119,7 +119,7 @@
 			//CHINA001 xCurCol->getPropertyValue(::svxform::FM_PROP_LABEL) >>= sName;
 			
 			xCurCol->getPropertyValue(CUIFM_PROP_LABEL) >>= sName;
-			sCurName = (const sal_Unicode*)sName;
+			sCurName = sName.getStr();
 		}
 		catch(...)
 		{
diff --git a/main/cui/source/factory/dlgfact.cxx b/main/cui/source/factory/dlgfact.cxx
index 15c8343..b3e844b 100644
--- a/main/cui/source/factory/dlgfact.cxx
+++ b/main/cui/source/factory/dlgfact.cxx
@@ -1900,7 +1900,7 @@
 
     if ( pDlg )
     {
-        pDlg->SetHelpId( rtl::OString( rCommand, rCommand.getLength(), RTL_TEXTENCODING_UTF8 ) );
+        pDlg->SetHelpId( rtl::OUStringToOString( rCommand, RTL_TEXTENCODING_UTF8 ) );
         return new AbstractInsertObjectDialog_Impl( pDlg );
     }
     return 0;
@@ -1913,7 +1913,7 @@
     if ( rCommand.equalsAscii(".uno:InsertObjectFloatingFrame" ) )
     {
         pDlg = new SfxInsertFloatingFrameDialog( pParent, xObj );
-        pDlg->SetHelpId( rtl::OString( rCommand, rCommand.getLength(), RTL_TEXTENCODING_UTF8 ) );
+        pDlg->SetHelpId( rtl::OUStringToOString( rCommand, RTL_TEXTENCODING_UTF8 ) );
         return new VclAbstractDialog_Impl( pDlg );
     }
     return 0;
diff --git a/main/cui/source/options/optlingu.hrc b/main/cui/source/options/optlingu.hrc
index 41c3338..64a1381 100644
--- a/main/cui/source/options/optlingu.hrc
+++ b/main/cui/source/options/optlingu.hrc
@@ -81,8 +81,6 @@
 #define CLB_EDIT_MODULES_MODULES            320
 #define FT_EDIT_MODULES_NEWDICTSLINK        321
 #define FL_EDIT_MODULES_BUTTONS             322
-// IAccessibility2 implementation 2009. ------
 #define STR_LINGU_MODULES_EDIT 			323
 #define STR_LINGU_DICS_EDIT_DIC 		324
 #define STR_LINGU_OPTIONS_EDIT 			325
-// ------ IAccessibility2 implementation 2009.
diff --git a/main/cui/source/options/optlingu.src b/main/cui/source/options/optlingu.src
index 6075efb..32d0b0f 100644
--- a/main/cui/source/options/optlingu.src
+++ b/main/cui/source/options/optlingu.src
@@ -352,7 +352,6 @@
 	{
 		Text [ en-US ] = "Edit Options";
 	};
-	// ------ IAccessibility2 implementation 2009.
 };
 // end: TabPage RID_SFXPAGE_LINGU
 
diff --git a/main/cui/source/tabpages/autocdlg.cxx b/main/cui/source/tabpages/autocdlg.cxx
index 1ce1b2d..9e41d81 100644
--- a/main/cui/source/tabpages/autocdlg.cxx
+++ b/main/cui/source/tabpages/autocdlg.cxx
@@ -2100,7 +2100,6 @@
 	aDblStandardPB.SetClickHdl(LINK(this, 	OfaQuoteTabPage, StdQuoteHdl));
 	aSglStandardPB.SetClickHdl(LINK(this, 	OfaQuoteTabPage, StdQuoteHdl));
 
-	//IAccessibility2 Implementation 2009-----
 	// Move down from the position before FreeResource() 
 	// For lost help ID issue
 	aSglStandardPB.SetAccessibleName(String(CUI_RES(STR_PB_SGL_STD) ) );
diff --git a/main/cui/source/tabpages/autocdlg.hrc b/main/cui/source/tabpages/autocdlg.hrc
index 6f7a600..a470954 100644
--- a/main/cui/source/tabpages/autocdlg.hrc
+++ b/main/cui/source/tabpages/autocdlg.hrc
@@ -150,7 +150,6 @@
 #define FT_SMARTTAGS                    221
 #define LB_SMARTTAGS                    222
 #define PB_SMARTTAGS                    223
-//IAccessibility2 Implementation 2009-----
 #define  STR_PB_NEWABBREV				224
 #define  STR_PB_DELABBREV				225
 #define  STR_PB_NEWDOUBLECAPS			226
@@ -161,7 +160,6 @@
 #define	 STR_PB_DBL_START				231
 #define  STR_PB_SGL_END					232
 #define  STR_PB_DBL_END					233
-//-----IAccessibility2 Implementation 2009
 
 #endif
 
diff --git a/main/cui/source/tabpages/connect.hrc b/main/cui/source/tabpages/connect.hrc
index 67aaebc..5635e32 100644
--- a/main/cui/source/tabpages/connect.hrc
+++ b/main/cui/source/tabpages/connect.hrc
@@ -39,5 +39,4 @@
 #define FT_TYPE 8
 #define LB_TYPE 1
 #define CTL_PREVIEW 1
-//IAccessibility2 Implementation 2009-----
 #define STR_EXAMPLE 1
diff --git a/main/cui/source/tabpages/paragrph.hrc b/main/cui/source/tabpages/paragrph.hrc
index e0e063c..e39f358 100644
--- a/main/cui/source/tabpages/paragrph.hrc
+++ b/main/cui/source/tabpages/paragrph.hrc
@@ -113,9 +113,7 @@
 
 #define CB_AS_SCRIPT_SPACE				7
 
-//IAccessibility2 Implementation 2009-----
 #define STR_EXAMPLE						5010
 #define STR_PAGE_STYLE					5011
-//-----IAccessibility2 Implementation 2009
 #endif
 
diff --git a/main/cui/source/tabpages/tabarea.hrc b/main/cui/source/tabpages/tabarea.hrc
index b9e4c76..1891b1e 100644
--- a/main/cui/source/tabpages/tabarea.hrc
+++ b/main/cui/source/tabpages/tabarea.hrc
@@ -181,7 +181,5 @@
 
 #define IMG_LOAD_H	23
 #define IMG_SAVE_H	24
-// IAccessibility2 implementation 2009 ------
 #define STR_CUI_COLORMODEL	5030
 #define STR_LB_HATCHINGSTYLE 5031
-// ------ IAccessibility2 implementation 2009.
diff --git a/main/cui/source/tabpages/tabarea.src b/main/cui/source/tabpages/tabarea.src
index 191bec3..8a85d47 100644
--- a/main/cui/source/tabpages/tabarea.src
+++ b/main/cui/source/tabpages/tabarea.src
@@ -875,9 +875,7 @@
         Pos = MAP_APPFONT ( 12 , 25  ) ;
 		Size = MAP_APPFONT ( 72 , 72 ) ;
 		TabStop = TRUE ;
-		//IAccessibility2 Implementation 2009-----
 		Text [ en-US ] = "Pattern Editor";
-		//-----IAccessibility2 Implementation 2009
 	};
     FixedText FT_COLOR
 	{
@@ -1319,18 +1317,14 @@
         Border = TRUE;
         Pos = MAP_APPFONT ( 157 , 14  ) ;
         Size = MAP_APPFONT ( 34 , 25 ) ;
-        // IAccessibility2 implementation 2009. ------
 		Text [ en-US ] = "Old Color" ;
-		// ------ IAccessibility2 implementation 2009.
 	};
 	Control CTL_PREVIEW_NEW
 	{
         Border = TRUE;
         Pos = MAP_APPFONT ( 157, 39  ) ;
         Size = MAP_APPFONT ( 34 , 25 ) ;
-        // IAccessibility2 implementation 2009. ------
         Text [ en-US ] = "New Color" ;
-        // ------ IAccessibility2 implementation 2009.
 	};
     ListBox LB_COLORMODEL
 	{
diff --git a/main/cui/source/tabpages/tabline.hrc b/main/cui/source/tabpages/tabline.hrc
index 57f1a06..6dd179f 100644
--- a/main/cui/source/tabpages/tabline.hrc
+++ b/main/cui/source/tabpages/tabline.hrc
@@ -37,7 +37,6 @@
 #define FT_LINE_ENDS_WIDTH 6
 #define LB_START_STYLE 3
 #define LB_END_STYLE 4
-//IAccessibility2 Impplementaton 2009-----
 #define STR_STYLE (LB_END_STYLE+1)
 #define STR_LB_START_STYLE 	30
 #define STR_LB_END_STYLE 	31
@@ -51,7 +50,6 @@
 #define STR_END_NUM 		39
 #define STR_START_LENGTH 	40
 #define STR_END_LENGTH 		41
-//-----IAccessibility2 Impplementaton 2009
 #define MTR_FLD_START_WIDTH 3
 #define MTR_FLD_END_WIDTH 2
 #define CBX_SYNCHRONIZE 1
@@ -121,12 +119,10 @@
 #define MN_GALLERY_ENTRY 100
 
 /*
-//IAccessibility2 Implementation 2009-----
 #define STR_START_TYPE 		1
 #define STR_END_TYPE 		2
 #define STR_START_NUM 		3
 #define STR_END_NUM 		4
 #define STR_START_LENGTH 	5
 #define STR_END_LENGTH 		6
-//-----IAccessibility2 Implementation 2009
 */
diff --git a/main/cui/source/tabpages/tabstpge.hrc b/main/cui/source/tabpages/tabstpge.hrc
index 55cf73b..2c56db2 100644
--- a/main/cui/source/tabpages/tabstpge.hrc
+++ b/main/cui/source/tabpages/tabstpge.hrc
@@ -55,8 +55,6 @@
 #define BTN_DELALL                      52
 #define ST_LEFTTAB_ASIAN                53
 #define ST_RIGHTTAB_ASIAN               54
-//IAccessibility2 Implementation 2009-----
 #define ST_FILLCHAR_OTHER				55
-//-----IAccessibility2 Implementation 2009
 #endif
 
diff --git a/main/cui/source/tabpages/tparea.cxx b/main/cui/source/tabpages/tparea.cxx
index 208949f..749bb94 100644
--- a/main/cui/source/tabpages/tparea.cxx
+++ b/main/cui/source/tabpages/tparea.cxx
@@ -2213,11 +2213,9 @@
 	aMtrFldYOffset.Show();
     aFlPosition.Show();
 	aRbtRow.Show();
-//IAccessible2 Implementation 2009-----
 	//Solution:Check one when initializing.
 	if(!aRbtRow.IsChecked()&&!aRbtColumn.IsChecked())
 	        aRbtRow.Check();
-//-----IAccessible2 Implementation 2009
 	aRbtColumn.Show();
 	aMtrFldOffset.Show();
     aFlOffset.Show();
diff --git a/main/dbaccess/source/core/recovery/dbdocrecovery.cxx b/main/dbaccess/source/core/recovery/dbdocrecovery.cxx
index 7e02fe1..b681546 100644
--- a/main/dbaccess/source/core/recovery/dbdocrecovery.cxx
+++ b/main/dbaccess/source/core/recovery/dbdocrecovery.cxx
@@ -394,7 +394,7 @@
                     message.append( "' not found in '" );
                     message.append( ::rtl::OUStringToOString( SubComponentRecovery::getComponentsStorageName( eComponentType ), RTL_TEXTENCODING_ASCII_US ) );
                     message.append( "', but required per map file!" );
-                    OSL_ENSURE( false, message.makeStringAndClear() );
+                    OSL_ENSURE( false, message.getStr() );
                 #endif
                     continue;
                 }
diff --git a/main/dbaccess/source/ui/browser/brwctrlr.cxx b/main/dbaccess/source/ui/browser/brwctrlr.cxx
index fc1c671..9d584c6 100644
--- a/main/dbaccess/source/ui/browser/brwctrlr.cxx
+++ b/main/dbaccess/source/ui/browser/brwctrlr.cxx
@@ -2013,7 +2013,7 @@
 	Reference< XInterface >  xCurControl(xColControls->getByIndex(nViewCol),UNO_QUERY);
 	::rtl::OUString aInitialText;
 	if (IsSearchableControl(xCurControl, &aInitialText))
-		sInitialText = (const sal_Unicode*)aInitialText;
+		sInitialText = aInitialText.getStr();
 
 	// prohibit the synchronization of the grid's display with the cursor's position
 	Reference< XPropertySet >  xModelSet(getControlModel(), UNO_QUERY);
@@ -2569,7 +2569,7 @@
 		Reference< XPropertySet >  xCurrentColModel(xModelColumns->getByIndex(nModelPos),UNO_QUERY);
 		::rtl::OUString aName = ::comphelper::getString(xCurrentColModel->getPropertyValue(PROPERTY_CONTROLSOURCE));
 
-		sFieldList += (const sal_Unicode*)aName;
+		sFieldList += aName.getStr();
 		sFieldList += ';';
 
 		pContext->arrFields.push_back(xCurrentColumn);
diff --git a/main/dbaccess/source/ui/browser/exsrcbrw.cxx b/main/dbaccess/source/ui/browser/exsrcbrw.cxx
index 44388c7..d2140b8 100644
--- a/main/dbaccess/source/ui/browser/exsrcbrw.cxx
+++ b/main/dbaccess/source/ui/browser/exsrcbrw.cxx
@@ -202,7 +202,7 @@
 					aControlProps = *(Sequence< ::com::sun::star::beans::PropertyValue>*)pArguments->Value.getValue();
 			}
 			else
-				OSL_ENSURE(sal_False, ((ByteString("SbaExternalSourceBrowser::dispatch(AddGridColumn) : unknown argument (") += ByteString((const sal_Unicode*)pArguments->Name, gsl_getSystemTextEncoding()).GetBuffer()) += ") !").GetBuffer());
+				OSL_ENSURE(sal_False, ((ByteString("SbaExternalSourceBrowser::dispatch(AddGridColumn) : unknown argument (") += ByteString(pArguments->Name.getStr(), gsl_getSystemTextEncoding()).GetBuffer()) += ") !").GetBuffer());
 		}
 		if (!sControlType.getLength())
 		{
diff --git a/main/dbaccess/source/ui/misc/TokenWriter.cxx b/main/dbaccess/source/ui/misc/TokenWriter.cxx
index 8081282..15a3e11 100644
--- a/main/dbaccess/source/ui/misc/TokenWriter.cxx
+++ b/main/dbaccess/source/ui/misc/TokenWriter.cxx
@@ -76,6 +76,8 @@
 using namespace ::com::sun::star::util;
 using ::com::sun::star::frame::XModel;
 
+inline SvStream& operator<<( SvStream& s, const rtl::OString r) { return (s << r.getStr()); }
+
 #if defined(UNX)
 const char __FAR_DATA ODatabaseImportExport::sNewLine = '\012';
 #else
@@ -819,7 +821,7 @@
 	IncIndent(1); TAG_ON_LF( OOO_STRING_SVTOOLS_HTML_style );
 
 	(*m_pStream) << sMyBegComment; OUT_LF();
-	(*m_pStream) << OOO_STRING_SVTOOLS_HTML_body << " { " << sFontFamily << '\"' << ::rtl::OString(m_aFont.Name,m_aFont.Name.getLength(), gsl_getSystemTextEncoding()) << '\"';
+	(*m_pStream) << OOO_STRING_SVTOOLS_HTML_body << " { " << sFontFamily << '\"' << ::rtl::OUStringToOString( m_aFont.Name, gsl_getSystemTextEncoding()) << '\"';
 		// TODO : think about the encoding of the font name
 	(*m_pStream) << "; " << sFontSize;
 	m_pStream->WriteNumber(m_aFont.Height);
@@ -895,14 +897,14 @@
 	aStrOut	= aStrOut + "=1";
 
 	IncIndent(1);
-	TAG_ON( aStrOut );
+	TAG_ON( aStrOut.getStr() );
 
 	FontOn();
 
 	TAG_ON( OOO_STRING_SVTOOLS_HTML_caption );
 	TAG_ON( OOO_STRING_SVTOOLS_HTML_bold );
 
-	(*m_pStream)	<< ::rtl::OString(m_sName,m_sName.getLength(), gsl_getSystemTextEncoding());
+	(*m_pStream)	<< ::rtl::OUStringToOString( m_sName, gsl_getSystemTextEncoding());
 		// TODO : think about the encoding of the name
 	TAG_OFF( OOO_STRING_SVTOOLS_HTML_bold );
 	TAG_OFF( OOO_STRING_SVTOOLS_HTML_caption );
@@ -1072,7 +1074,7 @@
 		}
 	}
 
-	TAG_ON( aStrTD );
+	TAG_ON( aStrTD.getStr() );
 
 	FontOn();
 
@@ -1116,7 +1118,7 @@
 	aStrOut  = aStrOut + OOO_STRING_SVTOOLS_HTML_O_face;
 	aStrOut  = aStrOut + "=";
 	aStrOut  = aStrOut + "\"";
-	aStrOut  = aStrOut + ::rtl::OString(m_aFont.Name,m_aFont.Name.getLength(),gsl_getSystemTextEncoding());
+	aStrOut  = aStrOut + ::rtl::OUStringToOString( m_aFont.Name, gsl_getSystemTextEncoding());
 		// TODO : think about the encoding of the font name
 	aStrOut  = aStrOut + "\"";
 	aStrOut  = aStrOut + " ";
diff --git a/main/dbaccess/source/ui/misc/UITools.cxx b/main/dbaccess/source/ui/misc/UITools.cxx
index f99cffe..ccff8e2 100644
--- a/main/dbaccess/source/ui/misc/UITools.cxx
+++ b/main/dbaccess/source/ui/misc/UITools.cxx
@@ -1500,7 +1500,7 @@
 	aURL.Complete = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.help://" ) );
 	aURL.Complete += _sModuleName;
 	aURL.Complete += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/" ) );
-	aURL.Complete += ::rtl::OUString(sHelpId, sHelpId.getLength(), RTL_TEXTENCODING_UTF8);
+	aURL.Complete += ::rtl::OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8);
 
 	::rtl::OUString sAnchor;
 	::rtl::OUString sTempURL = aURL.Complete;
diff --git a/main/dbaccess/source/ui/querydesign/querycontroller.cxx b/main/dbaccess/source/ui/querydesign/querycontroller.cxx
index de14457..0396caf 100644
--- a/main/dbaccess/source/ui/querydesign/querycontroller.cxx
+++ b/main/dbaccess/source/ui/querydesign/querycontroller.cxx
@@ -178,7 +178,7 @@
 					{
 						rString+= ::rtl::OUString::createFromAscii("SQL_KEYWORD:");
 						::rtl::OString sT = OSQLParser::TokenIDToStr(_pNode->getTokenID());
-						rString += ::rtl::OUString(sT,sT.getLength(),RTL_TEXTENCODING_UTF8);
+						rString += ::rtl::OStringToOUString( sT, RTL_TEXTENCODING_UTF8);
 					 break;}
 
 				case SQL_NODE_COMPARISON:
diff --git a/main/desktop/source/app/app.cxx b/main/desktop/source/app/app.cxx
index e08ce3b..1187b9b 100644
--- a/main/desktop/source/app/app.cxx
+++ b/main/desktop/source/app/app.cxx
@@ -253,12 +253,12 @@
 {
     if ( !Desktop::pResMgr )
     {
-        String aMgrName = String::CreateFromAscii( "dkt" );
+        const char* pMgrName = "dkt";
 
         // Create desktop resource manager and bootstrap process
         // was successful. Use default way to get language specific message.
         if ( Application::IsInExecute() )
-            Desktop::pResMgr = ResMgr::CreateResMgr( U2S( aMgrName ));
+            Desktop::pResMgr = ResMgr::CreateResMgr( pMgrName);
 
         if ( !Desktop::pResMgr )
         {
@@ -268,7 +268,7 @@
 /*
             LanguageType aLanguageType = LANGUAGE_DONTKNOW;
 
-            Desktop::pResMgr = ResMgr::SearchCreateResMgr( U2S( aMgrName ), aLanguageType );
+            Desktop::pResMgr = ResMgr::SearchCreateResMgr( pMgrName, aLanguageType );
             AllSettings as = GetSettings();
             as.SetUILanguage(aLanguageType);
             SetSettings(as);
@@ -282,7 +282,7 @@
 
             ::com::sun::star::lang::Locale aLocale( aLanguage, aCountry, aVariant );
 
-            Desktop::pResMgr = ResMgr::SearchCreateResMgr( U2S( aMgrName ), aLocale);
+            Desktop::pResMgr = ResMgr::SearchCreateResMgr( pMgrName, aLocale);
             AllSettings as = GetSettings();
             as.SetUILocale(aLocale);
             SetSettings(as);
@@ -1935,17 +1935,14 @@
 
         // set static variable to enabled/disable crash reporter
         retrieveCrashReporterState();
-        if ( !isCrashReporterEnabled() )
-        {
-            osl_setErrorReporting( sal_False );
-            // disable stack trace feature
-        }
+        const bool bCrashReporterEnabled = isCrashReporterEnabled();
+        osl_setErrorReporting( !bCrashReporterEnabled );
 
         // create title string
         sal_Bool bCheckOk = sal_False;
         ::com::sun::star::lang::Locale aLocale;
-        String aMgrName = String::CreateFromAscii( "ofa" );
-        ResMgr* pLabelResMgr = ResMgr::SearchCreateResMgr( U2S( aMgrName ), aLocale );
+        const char* pMgrName = "ofa";
+	ResMgr* pLabelResMgr = ResMgr::SearchCreateResMgr( pMgrName, aLocale );
         String aTitle = pLabelResMgr ? String( ResId( RID_APPTITLE, *pLabelResMgr ) ) : String();
         delete pLabelResMgr;
 
diff --git a/main/desktop/source/app/appfirststart.cxx b/main/desktop/source/app/appfirststart.cxx
index 811e38f..183e02e 100644
--- a/main/desktop/source/app/appfirststart.cxx
+++ b/main/desktop/source/app/appfirststart.cxx
@@ -71,7 +71,7 @@
 
     AllSettings aSettings(Application::GetSettings());
     aLocale = aSettings.GetUILocale();
-    ResMgr* pLocalResMgr = ResMgr::SearchCreateResMgr(aMgrName, aLocale);
+    ResMgr* pLocalResMgr = ResMgr::SearchCreateResMgr( aMgrName.getStr(), aLocale);
 
     aLangString = aLocale.Language;
     if ( aLocale.Country.getLength() != 0 )
diff --git a/main/desktop/source/migration/wizard.cxx b/main/desktop/source/migration/wizard.cxx
index 60f583d..c892fc2 100644
--- a/main/desktop/source/migration/wizard.cxx
+++ b/main/desktop/source/migration/wizard.cxx
@@ -108,10 +108,7 @@
 ResMgr *FirstStartWizard::GetResManager()
 {
     if ( !FirstStartWizard::pResMgr )
-    {
-        String aMgrName = String::CreateFromAscii( "dkt" );
-        FirstStartWizard::pResMgr = ResMgr::CreateResMgr( OUStringToOString( aMgrName, RTL_TEXTENCODING_UTF8 ));
-    }
+        FirstStartWizard::pResMgr = ResMgr::CreateResMgr( "dkt");
     return FirstStartWizard::pResMgr;
 }
 
diff --git a/main/dtrans/source/cnttype/mcnttype.cxx b/main/dtrans/source/cnttype/mcnttype.cxx
index e9a422c..0754285 100644
--- a/main/dtrans/source/cnttype/mcnttype.cxx
+++ b/main/dtrans/source/cnttype/mcnttype.cxx
@@ -327,7 +327,7 @@
 			throw IllegalArgumentException( );
 
 		// remove the last quote-sign
-		OUString qpvalue( pvalue, pvalue.getLength( ) - 1 );
+		const OUString qpvalue( pvalue.getStr(), pvalue.getLength( ) - 1 );
 		pvalue = qpvalue;
 
 		if ( !pvalue.getLength( ) )
diff --git a/main/editeng/inc/editeng/AccessibleEditableTextPara.hxx b/main/editeng/inc/editeng/AccessibleEditableTextPara.hxx
index d41730b..08ed163 100644
--- a/main/editeng/inc/editeng/AccessibleEditableTextPara.hxx
+++ b/main/editeng/inc/editeng/AccessibleEditableTextPara.hxx
@@ -373,13 +373,11 @@
         /// Check whether 0<=nStart<=n and 0<=nEnd<=n
         void CheckRange( sal_Int32 nStart, sal_Int32 nEnd ) SAL_THROW((::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException));
 
-//IAccessibility2 Implementation 2009-----
 		void _correctValues( const sal_Int32 nIndex, ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rValues );
 	 	sal_Int32 SkipField(sal_Int32 nIndex, sal_Bool bForward);
 	 // get overlapped field, extend return string. Only extend forward for now
 		sal_Bool ExtendByField( ::com::sun::star::accessibility::TextSegment& Segment );
 		String GetFieldTypeNameAtIndex(sal_Int32 nIndex);
-//-----IAccessibility2 Implementation 2009
         // the paragraph index in the edit engine (guarded by solar mutex)
         sal_Int32	mnParagraphIndex;
 
@@ -407,14 +405,12 @@
 
         /// Our listeners (guarded by maMutex)
         int mnNotifierClientId;
-	//IAccessibility2 Implementation 2009-----
 public:
 		void SetParagraphBackColorAccessible(const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > & ref)
 		{ m_xAccInfo = ref ;}		
 private:
 		::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xAccInfo;
         //virtual sal_Bool IsShapeParaFocusable( );
-	//-----IAccessibility2 Implementation 2009
 
         // --> OD 2006-01-11 #i27138#
         // the paragraph manager, which created this instance - is NULL, if
diff --git a/main/editeng/inc/editeng/editdata.hxx b/main/editeng/inc/editeng/editdata.hxx
index 65a4b1b..2763c0c 100644
--- a/main/editeng/inc/editeng/editdata.hxx
+++ b/main/editeng/inc/editeng/editdata.hxx
@@ -364,9 +364,7 @@
 
     /// Denotes the end of a high-level action triggered by a key press
     EE_NOTIFY_INPUT_END,
-//IAccessibility2 Implementation 2009-----
 	EE_NOTIFY_TEXTVIEWSELECTIONCHANGED_ENDD_PARA
-//-----IAccessibility2 Implementation 2009
 };
 
 struct EENotify
diff --git a/main/editeng/inc/editeng/editeng.hxx b/main/editeng/inc/editeng/editeng.hxx
index a6afcc0..fcf9e28 100644
--- a/main/editeng/inc/editeng/editeng.hxx
+++ b/main/editeng/inc/editeng/editeng.hxx
@@ -108,9 +108,7 @@
 #define GETATTRIBS_CHARATTRIBS  (sal_uInt8)0x04
 #define GETATTRIBS_ALL          (sal_uInt8)0xFF
 
-//IAccessibility2 Implementation 2009-----
 class SdrObject;
-//-----IAccessibility2 Implementation 2009
 class EDITENG_DLLPUBLIC EditEngine
 {
 	friend class EditView;
@@ -475,9 +473,7 @@
 	static void		ImportBulletItem( SvxNumBulletItem& rNumBullet, sal_uInt16 nLevel, const SvxBulletItem* pOldBullet, const SvxLRSpaceItem* pOldLRSpace );
 	static sal_Bool 	IsPrintable( sal_Unicode c ) { return ( ( c >= 32 ) && ( c != 127 ) ); }
     static sal_Bool     HasValidData( const ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::XTransferable >& rTransferable );
-	//IAccessibility2 Implementation 2009-----
 	virtual SdrObject* GetCurTextObj() { return NULL; }
-	//-----IAccessibility2 Implementation 2009
 	/** sets a link that is called at the beginning of a drag operation at an edit view */
 	void			SetBeginDropHdl( const Link& rLink );
 	Link			GetBeginDropHdl() const;
diff --git a/main/editeng/inc/editeng/editview.hxx b/main/editeng/inc/editeng/editview.hxx
index c61709a..521358b 100644
--- a/main/editeng/inc/editeng/editview.hxx
+++ b/main/editeng/inc/editeng/editview.hxx
@@ -219,10 +219,8 @@
 
 	sal_Bool			IsCursorAtWrongSpelledWord( sal_Bool bMarkIfWrong = sal_False );
 	sal_Bool			IsWrongSpelledWordAtPos( const Point& rPosPixel, sal_Bool bMarkIfWrong = sal_False );
-	//IAccessibility2 Implementation 2009-----
     	sal_Bool IsShapeParaFocusable( ) ;
     sal_Bool WrongSpelledBreakPara(sal_Int32 nPara,sal_uInt16& nStartIndex, sal_uInt16& nEndIndex,sal_Int32 nIndex);
-	//-----IAccessibility2 Implementation 2009
 	void			SpellIgnoreWord();
 	void			ExecuteSpellPopup( const Point& rPosPixel, Link* pCallBack = 0 );
 
diff --git a/main/editeng/inc/editeng/splwrap.hxx b/main/editeng/inc/editeng/splwrap.hxx
index 142ea1f..64ea8f7 100644
--- a/main/editeng/inc/editeng/splwrap.hxx
+++ b/main/editeng/inc/editeng/splwrap.hxx
@@ -39,7 +39,6 @@
 }}}}
 
 class Window;
-//IAccessibility2 Impplementaton 2009-----
 class SdrObject;
 // misc functions ---------------------------------------------------------------
 
@@ -62,7 +61,6 @@
 		::com::sun::star::linguistic2::XSpellChecker1 > xSpell;
 	::com::sun::star::uno::Reference<
 		::com::sun::star::linguistic2::XHyphenator > 	xHyph;
-//IAccessibility2 Impplementaton 2009-----
 	SdrObject* mpTextObj;
 	sal_uInt16 	nOldLang; 		// Sprache merken, nur bei Aenderung SetLanguage rufen
 	sal_Bool 	bOtherCntnt : 1; // gesetzt => Sonderbereiche zunaechst pruefen
@@ -154,10 +152,8 @@
 	virtual void AutoCorrect( const String& rAktStr, const String& rNewStr );
 	virtual void InsertHyphen( const sal_uInt16 nPos ); // Hyphen einfuegen
 
-//IAccessibility2 Impplementaton 2009-----
 	void SetCurTextObj( SdrObject* pObj ) { mpTextObj = pObj; }
 	SdrObject* GetCurTextObj() { return mpTextObj; }
-//-----IAccessibility2 Impplementaton 2009
 };
 
 #endif
diff --git a/main/editeng/inc/editeng/unoedhlp.hxx b/main/editeng/inc/editeng/unoedhlp.hxx
index 1a62bf8..399932c 100644
--- a/main/editeng/inc/editeng/unoedhlp.hxx
+++ b/main/editeng/inc/editeng/unoedhlp.hxx
@@ -60,7 +60,6 @@
 	void	SetStartValue( sal_uLong n );
 	void	SetEndValue( sal_uLong n );
 };
-//IAccessibility2 Implementation 2009-----
 class SvxEditSourceHintEndPara :public SvxEditSourceHint
 {
 public:
@@ -70,7 +69,6 @@
 	SvxEditSourceHintEndPara( sal_uInt32 nId, sal_uInt32 nValue, sal_uInt32 nStart=0, sal_uInt32 nEnd=0 )
 		:SvxEditSourceHint(nId,nValue,nStart){ (void)nEnd; }
 };
-//-----IAccessibility2 Implementation 2009
 /** Helper class for common functionality in edit sources
  */
 class EDITENG_DLLPUBLIC SvxEditSourceHelper
@@ -107,10 +105,8 @@
 
         @return sal_True, if the range has been successfully determined
      */
-	//IAccessibility2 Implementation 2009-----
     //static sal_Bool GetAttributeRun( USHORT& nStartIndex, USHORT& nEndIndex, const EditEngine& rEE, USHORT nPara, USHORT nIndex );
     static sal_Bool GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, const EditEngine& rEE, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell=sal_False );
-	//-----IAccessibility2 Implementation 2009
 
     /** Convert point from edit engine to user coordinate space
 
diff --git a/main/editeng/inc/editeng/unoedprx.hxx b/main/editeng/inc/editeng/unoedprx.hxx
index 3a8c8b3..34730aa 100644
--- a/main/editeng/inc/editeng/unoedprx.hxx
+++ b/main/editeng/inc/editeng/unoedprx.hxx
@@ -74,7 +74,6 @@
 	virtual OutputDevice*	GetRefDevice() const;
     virtual sal_Bool		GetIndexAtPoint( const Point&, sal_uInt16& nPara, sal_uInt16& nIndex ) const;
     virtual sal_Bool		GetWordIndices( sal_uInt16 nPara, sal_uInt16 nIndex, sal_uInt16& nStart, sal_uInt16& nEnd ) const;
-	//IAccessibility2 Implementation 2009-----
 	virtual void	SetUpdateModeForAcc( sal_Bool bUp);
 	virtual sal_Bool	GetUpdateModeForAcc() const;
     virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell = sal_False ) const;
diff --git a/main/editeng/inc/editeng/unoedsrc.hxx b/main/editeng/inc/editeng/unoedsrc.hxx
index d384eb8..c3c5deb 100644
--- a/main/editeng/inc/editeng/unoedsrc.hxx
+++ b/main/editeng/inc/editeng/unoedsrc.hxx
@@ -219,12 +219,10 @@
         Index of paragraph to query bullet info on
      */
     virtual EBulletInfo     GetBulletInfo( sal_uInt16 nPara ) const = 0;
-//IAccessibility2 Implementation 2009-----
      virtual String       GetNumStr(sal_uInt16) const { return XubString();};
     //IAccessible2 migration fix
     virtual void					SetUpdateModeForAcc( sal_Bool ) {};
 	virtual sal_Bool					GetUpdateModeForAcc() const { return sal_True; };
-//-----IAccessibility2 Implementation 2009
     /** Query the bounding rectangle of the given character
 
         @param nPara[0 .. n]
@@ -336,10 +334,8 @@
 
         @return sal_True, if the range has been successfully determined
      */
-	//IAccessibility2 Implementation 2009-----
 //    virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex ) const = 0;
     virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell = sal_False ) const = 0;
-	//-----IAccessibility2 Implementation 2009
 
     /** Query number of lines in the formatted paragraph
 
@@ -550,11 +546,9 @@
      */
     virtual sal_Bool Paste() = 0;
 
-//IAccessibility2 Implementation 2009-----
     virtual sal_Bool IsWrongSpelledWordAtPos( sal_Int32, sal_Int32 ) { return sal_False; };
     virtual sal_Bool IsShapeParaFocusable( ) { return sal_True; };
     virtual sal_Bool BreakParaWrongList(sal_Int32, sal_uInt16&, sal_uInt16&, sal_Int32){ return sal_False; };
-//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/editeng/inc/editeng/unofored.hxx b/main/editeng/inc/editeng/unofored.hxx
index ab0093b..ffbbcf0 100644
--- a/main/editeng/inc/editeng/unofored.hxx
+++ b/main/editeng/inc/editeng/unofored.hxx
@@ -72,10 +72,7 @@
 	virtual OutputDevice*	GetRefDevice() const;
     virtual sal_Bool		GetIndexAtPoint( const Point&, sal_uInt16& nPara, sal_uInt16& nIndex ) const;
     virtual sal_Bool		GetWordIndices( sal_uInt16 nPara, sal_uInt16 nIndex, sal_uInt16& nStart, sal_uInt16& nEnd ) const;
-	//IAccessibility2 Implementation 2009-----
-//    virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex ) const;
     virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell = sal_False ) const;
-	//-----IAccessibility2 Implementation 2009
     virtual sal_uInt16			GetLineCount( sal_uInt16 nPara ) const;
     virtual sal_uInt16			GetLineLen( sal_uInt16 nPara, sal_uInt16 nLine ) const;
     virtual void            GetLineBoundaries( /*out*/sal_uInt16 &rStart, /*out*/sal_uInt16 &rEnd, sal_uInt16 nParagraph, sal_uInt16 nLine ) const;
diff --git a/main/editeng/inc/editeng/unoforou.hxx b/main/editeng/inc/editeng/unoforou.hxx
index cfb81d4..133f5c2 100644
--- a/main/editeng/inc/editeng/unoforou.hxx
+++ b/main/editeng/inc/editeng/unoforou.hxx
@@ -93,10 +93,7 @@
 	virtual OutputDevice*	GetRefDevice() const;
     virtual sal_Bool		GetIndexAtPoint( const Point&, sal_uInt16& nPara, sal_uInt16& nIndex ) const;
     virtual sal_Bool		GetWordIndices( sal_uInt16 nPara, sal_uInt16 nIndex, sal_uInt16& nStart, sal_uInt16& nEnd ) const;
-	//IAccessibility2 Implementation 2009-----
-//    virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex ) const;
     virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell = sal_False ) const;
-	//-----IAccessibility2 Implementation 2009
     virtual sal_uInt16			GetLineCount( sal_uInt16 nPara ) const;
     virtual sal_uInt16			GetLineLen( sal_uInt16 nPara, sal_uInt16 nLine ) const;
     virtual void            GetLineBoundaries( /*out*/sal_uInt16 &rStart, /*out*/sal_uInt16 &rEnd, sal_uInt16 nPara, sal_uInt16 nLine ) const;
diff --git a/main/editeng/inc/editeng/unotext.hxx b/main/editeng/inc/editeng/unotext.hxx
index 248721a..6565720 100644
--- a/main/editeng/inc/editeng/unotext.hxx
+++ b/main/editeng/inc/editeng/unotext.hxx
@@ -218,10 +218,7 @@
 	virtual OutputDevice*	GetRefDevice() const;
     virtual sal_Bool		GetIndexAtPoint( const Point&, sal_uInt16& nPara, sal_uInt16& nIndex ) const;
     virtual sal_Bool		GetWordIndices( sal_uInt16 nPara, sal_uInt16 nIndex, sal_uInt16& nStart, sal_uInt16& nEnd ) const;
-	//IAccessibility2 Implementation 2009-----
-//    virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex ) const;
     virtual sal_Bool 		GetAttributeRun( sal_uInt16& nStartIndex, sal_uInt16& nEndIndex, sal_uInt16 nPara, sal_uInt16 nIndex, sal_Bool bInCell = sal_False ) const;
-	//-----IAccessibility2 Implementation 2009
     virtual sal_uInt16			GetLineCount( sal_uInt16 nPara ) const;
     virtual sal_uInt16			GetLineLen( sal_uInt16 nPara, sal_uInt16 nLine ) const;
     virtual void            GetLineBoundaries( /*out*/sal_uInt16 &rStart, /*out*/sal_uInt16 &rEnd, sal_uInt16 nParagraph, sal_uInt16 nLine ) const;
diff --git a/main/editeng/source/accessibility/AccessibleEditableTextPara.cxx b/main/editeng/source/accessibility/AccessibleEditableTextPara.cxx
index 76f7c01..694fb20 100644
--- a/main/editeng/source/accessibility/AccessibleEditableTextPara.cxx
+++ b/main/editeng/source/accessibility/AccessibleEditableTextPara.cxx
@@ -76,13 +76,11 @@
 #include "AccessibleHyperlink.hxx"
 
 #include <svtools/colorcfg.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <algorithm>
 using namespace std;
 #include "editeng.hrc"
 #include <editeng/eerdll.hxx>
 #include <editeng/numitem.hxx>
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::beans;
@@ -97,7 +95,6 @@
 
 namespace accessibility
 {
-//IAccessibility2 Implementation 2009-----
 
     const SvxItemPropertySet* ImplGetSvxCharAndParaPropertiesSet()
     {
@@ -224,12 +221,10 @@
         DBG_WARNING( "AccessibleEditableTextPara::implGetParagraphBoundary: only a base implementation, ignoring the index" );
 
         rBoundary.startPos = 0;
-	//IAccessibility2 Implementation 2009-----   
         //rBoundary.endPos = GetTextLen();
         ::rtl::OUString sText( implGetText() );
         sal_Int32 nLength = sText.getLength();
         rBoundary.endPos = nLength;
-	//-----IAccessibility2 Implementation 2009
     }
 
     void AccessibleEditableTextPara::implGetLineBoundary( ::com::sun::star::i18n::Boundary& rBoundary, sal_Int32 nIndex )
@@ -387,9 +382,7 @@
 
             Dispose();
         }
-//IAccessibility2 Implementation 2009-----
 		mpEditSource = pEditSource; 
-//-----IAccessibility2 Implementation 2009
         // #108900# Init last text content
         try
         {
@@ -765,11 +758,9 @@
             !pStateSet->contains(nStateId) )
         {
             pStateSet->AddState( nStateId );
-//IAccessibility2 Implementation 2009-----
 		// MT: Removed method IsShapeParaFocusable which was introduced with IA2 - basically it was only about figuring out wether or not the window has the focus, should be solved differently
 		// if(IsShapeParaFocusable())
             GotPropertyEvent( uno::makeAny( nStateId ), AccessibleEventId::STATE_CHANGED );
-//-----IAccessibility2 Implementation 2009
         }
     }
 
@@ -824,10 +815,7 @@
         // must provide XAccesibleText by hand, since it comes publicly inherited by XAccessibleEditableText
         if ( rType == ::getCppuType((uno::Reference< XAccessibleText > *)0) )
         {
-	//IAccessibility2 Implementation 2009-----
-			//	uno::Reference< XAccessibleText > aAccText = this;
             uno::Reference< XAccessibleText > aAccText = static_cast< XAccessibleEditableText * >(this);
-	//-----IAccessibility2 Implementation 2009
             aRet <<= aAccText;
         }
         else if ( rType == ::getCppuType((uno::Reference< XAccessibleEditableText > *)0) )
@@ -835,13 +823,11 @@
             uno::Reference< XAccessibleEditableText > aAccEditText = this;
             aRet <<= aAccEditText;
         }
-	//IAccessibility2 Implementation 2009-----
 	else if ( rType == ::getCppuType((uno::Reference< XAccessibleHypertext > *)0) )
         {
             uno::Reference< XAccessibleHypertext > aAccHyperText = this;
             aRet <<= aAccHyperText;
         }
-	//-----IAccessibility2 Implementation 2009
         else
         {
             aRet = AccessibleTextParaInterfaceBase::queryInterface(rType);
@@ -939,7 +925,6 @@
     ::rtl::OUString SAL_CALL AccessibleEditableTextPara::getAccessibleDescription() throw (uno::RuntimeException)
     {
         DBG_CHKTHIS( AccessibleEditableTextPara, NULL );
-	//IAccessibility2 Implementation 2009-----
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
 
         // append first 40 characters from text, or first line, if shorter
@@ -981,7 +966,6 @@
         }
 
         return ::rtl::OUString( sStr ) + aLine;
-	//-----IAccessibility2 Implementation 2009
     }
 
     ::rtl::OUString SAL_CALL AccessibleEditableTextPara::getAccessibleName() throw (uno::RuntimeException)
@@ -1058,7 +1042,6 @@
 
         if( !pStateSet )
             return uno::Reference<XAccessibleStateSet>();
-//IAccessibility2 Implementation 2009-----
 		uno::Reference<XAccessibleStateSet> xParentStates;
 		if (getAccessibleParent().is())
 		{
@@ -1069,7 +1052,6 @@
 		{
 			pStateSet->AddState(AccessibleStateType::EDITABLE);
 		}
-//-----IAccessibility2 Implementation 2009
         return uno::Reference<XAccessibleStateSet>( new ::utl::AccessibleStateSetHelper (*pStateSet) );
     }
 
@@ -1291,7 +1273,6 @@
             GetParagraphIndex() == aSelection.nEndPara )
         {
             // caret is always nEndPara,nEndPos
-			//IAccessibility2 Implementation 2009-----
 			EBulletInfo aBulletInfo = GetTextForwarder().GetBulletInfo( static_cast< sal_uInt16 >(GetParagraphIndex()) );
 			if( aBulletInfo.nParagraph != EE_PARA_NOT_FOUND &&
 				aBulletInfo.bVisible && 
@@ -1301,7 +1282,6 @@
 				if( aSelection.nEndPos - nBulletLen >= 0 )
 					return aSelection.nEndPos - nBulletLen;
 			}
-			//-----IAccessibility2 Implementation 2009
             return aSelection.nEndPos;
         }
 
@@ -1327,7 +1307,6 @@
 
         return OCommonAccessibleText::getCharacter( nIndex );
     }
-    //IAccessibility2 Implementation 2009-----
 	static uno::Sequence< ::rtl::OUString > getAttributeNames()
 	{
 		static uno::Sequence< ::rtl::OUString >* pNames = NULL;
@@ -1368,7 +1347,6 @@
 		}
 		return *pNames;
 	}
-//-----IAccessibility2 Implementation 2009
 	struct IndexCompare
 	{
 		const PropertyValue* pValues;
@@ -1468,7 +1446,6 @@
         DBG_CHKTHIS( AccessibleEditableTextPara, NULL );
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
 	
-		//IAccessibility2 Implementation 2009-----
 		//Skip the bullet range to ingnore the bullet text 
 		SvxTextForwarder& rCacheTF = GetTextForwarder();
 		EBulletInfo aBulletInfo = rCacheTF.GetBulletInfo( static_cast< sal_uInt16 >(GetParagraphIndex()) );
@@ -1492,7 +1469,6 @@
 
         // ... and override them with the direct attributes from the specific position
         uno::Sequence< beans::PropertyValue > aRunAttribs( getRunAttributes( nIndex, aPropertyNames ) );
-		//-----IAccessibility2 Implementation 2009
         sal_Int32 nRunAttribs = aRunAttribs.getLength();
         const beans::PropertyValue *pRunAttrib = aRunAttribs.getConstArray();
         for (sal_Int32 k = 0;  k < nRunAttribs;  ++k)
@@ -1540,7 +1516,6 @@
             rRes.Handle = -1;
             rRes.State  = bIsDirectVal ? PropertyState_DIRECT_VALUE : PropertyState_DEFAULT_VALUE;
         }
-		//IAccessibility2 Implementation 2009-----
 		if( bSupplementalMode )
 		{
 			_correctValues( nIndex, aRes );
@@ -1556,7 +1531,6 @@
 			rRes.Value <<= numStr;
 			rRes.Handle = -1;
 			rRes.State = PropertyState_DIRECT_VALUE;
-			//-----IAccessibility2 Implementation 2009
 			//For field object.
 			String strFieldType = GetFieldTypeNameAtIndex(nIndex);
 			if (strFieldType.Len() > 0)
@@ -1646,10 +1620,8 @@
         DBG_CHKTHIS( AccessibleEditableTextPara, NULL );
 
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
-	//IAccessibility2 Implementation 2009-----
 	if ((rPoint.X <= 0) && (rPoint.Y <= 0))
 		return 0;
-	//-----IAccessibility2 Implementation 2009
         sal_uInt16 nPara, nIndex;
 
         // offset from surrounding cell/shape
@@ -1781,8 +1753,7 @@
 
         return OCommonAccessibleText::getTextRange(nStartIndex, nEndIndex);
     }
-//IAccessibility2 Implementation 2009-----
-	void AccessibleEditableTextPara::_correctValues( const sal_Int32 nIndex,
+	void AccessibleEditableTextPara::_correctValues( const sal_Int32 /* nIndex */,
 										   uno::Sequence< PropertyValue >& rValues)
 	{
 		SvxTextForwarder& rCacheTF = GetTextForwarder();
@@ -2051,7 +2022,6 @@
 		}
 		return bExtend;
     }
-//-----IAccessibility2 Implementation 2009
     ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleEditableTextPara::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
     {
         DBG_CHKTHIS( AccessibleEditableTextPara, NULL );
@@ -2067,7 +2037,6 @@
 
         switch( aTextType )
         {
-	//IAccessibility2 Implementation 2009-----
 		case AccessibleTextType::CHARACTER:
 		case AccessibleTextType::WORD:				
 		{
@@ -2075,7 +2044,6 @@
 			ExtendByField( aResult );
 			break;
             	}
-	//-----IAccessibility2 Implementation 2009
             // Not yet handled by OCommonAccessibleText. Missing
             // implGetAttributeRunBoundary() method there
             case AccessibleTextType::ATTRIBUTE_RUN:
@@ -2113,7 +2081,6 @@
 		}
                 break;
             }
-//IAccessibility2 Implementation 2009-----
             case AccessibleTextType::LINE:
             {
                 SvxTextForwarder&	rCacheTF = GetTextForwarder();
@@ -2169,7 +2136,6 @@
                 }
                 break;
             }
-//-----IAccessibility2 Implementation 2009
             default:
                 aResult = OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
                 break;
@@ -2190,9 +2156,7 @@
         ::com::sun::star::accessibility::TextSegment aResult;
         aResult.SegmentStart = -1;
         aResult.SegmentEnd = -1;
-//IAccessibility2 Implementation 2009-----
 		i18n::Boundary aBoundary;
-//-----IAccessibility2 Implementation 2009
         switch( aTextType )
         {
             // Not yet handled by OCommonAccessibleText. Missing
@@ -2230,7 +2194,6 @@
                 }
                 break;
             }
-	    //IAccessibility2 Implementation 2009-----
             case AccessibleTextType::LINE:
             {
                 SvxTextForwarder&	rCacheTF = GetTextForwarder();
@@ -2341,7 +2304,6 @@
 				ExtendByField( aResult );
 				break;
 			}
-			//-----IAccessibility2 Implementation 2009
             default:
                 aResult = OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
                 break;
@@ -2362,9 +2324,7 @@
         ::com::sun::star::accessibility::TextSegment aResult;
         aResult.SegmentStart = -1;
         aResult.SegmentEnd = -1;
-//IAccessibility2 Implementation 2009-----
 		i18n::Boundary aBoundary;
-//-----IAccessibility2 Implementation 2009
         switch( aTextType )
         {
             case AccessibleTextType::ATTRIBUTE_RUN:
@@ -2387,7 +2347,6 @@
                 break;
             }
 
-//IAccessibility2 Implementation 2009-----
             case AccessibleTextType::LINE:
             {
                 SvxTextForwarder&	rCacheTF = GetTextForwarder();
@@ -2473,7 +2432,6 @@
 				ExtendByField( aResult );
 				break;
 			}
-			//-----IAccessibility2 Implementation 2009
             default:
                 aResult = OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
                 break;
@@ -2550,7 +2508,6 @@
             if( aBulletInfo.nParagraph != EE_PARA_NOT_FOUND && aBulletInfo.bVisible )
                         nBulletLen = aBulletInfo.aText.Len();
             ESelection aSelection = MakeSelection (nStartIndex + nBulletLen, nEndIndex + nBulletLen);
-            //if( !rCacheTF.IsEditable( MakeSelection(nStartIndex, nEndIndex) ) )
             if( !rCacheTF.IsEditable( aSelection ) )
                 return sal_False; // non-editable area selected
 
diff --git a/main/editeng/source/accessibility/AccessibleHyperlink.cxx b/main/editeng/source/accessibility/AccessibleHyperlink.cxx
index 490f497..82ebffd 100644
--- a/main/editeng/source/accessibility/AccessibleHyperlink.cxx
+++ b/main/editeng/source/accessibility/AccessibleHyperlink.cxx
@@ -141,7 +141,6 @@
 // MT IA2: Accessiblehyperlink.hxx from IA2 CWS - meanwhile we also introduced one in DEV300 (above)
 // Keeping this for reference - we probably should get support for image maps in our implementation...
 
-//IAccessibility2 Implementation 2009-----
 
 /*
 
@@ -441,6 +440,5 @@
 
 */
 
-//-----IAccessibility2 Implementation 2009
 
 
diff --git a/main/editeng/source/accessibility/AccessibleStaticTextBase.cxx b/main/editeng/source/accessibility/AccessibleStaticTextBase.cxx
index d9781ad..fe02f25 100644
--- a/main/editeng/source/accessibility/AccessibleStaticTextBase.cxx
+++ b/main/editeng/source/accessibility/AccessibleStaticTextBase.cxx
@@ -83,9 +83,7 @@
             return ( lhs.Name == rhs.Name && lhs.Value == rhs.Value );
         }
     };
-//IAccessibility2 Implementation 2009-----
 sal_Unicode cNewLine(0x0a);
-//-----IAccessibility2 Implementation 2009
 	//------------------------------------------------------------------------
 	//
 	// Static Helper
@@ -122,9 +120,7 @@
      */
     class AccessibleStaticTextBase_Impl
     {
-	//IAccessibility2 Implementation 2009-----
 		friend class AccessibleStaticTextBase;
-	//-----IAccessibility2 Implementation 2009
     public:
 
         // receive pointer to our frontend class and view window
@@ -198,9 +194,7 @@
                                               sal_Int32 nEndPara, sal_Int32 nEndIndex );
 
         Rectangle                   GetParagraphBoundingBox() const;
-	//IAccessibility2 Implementation 2009-----
 		sal_Bool					RemoveLineBreakCount( sal_Int32& rIndex );
-	//-----IAccessibility2 Implementation 2009
 
     private:
 
@@ -393,9 +387,7 @@
         {
             nCurrCount = GetParagraph( nCurrPara ).getCharacterCount();
             nCurrIndex += nCurrCount;
-	//IAccessibility2 Implementation 2009-----
             if( nCurrIndex >= nFlatIndex )
-	//-----IAccessibility2 Implementation 2009
             {
                 // check overflow
                 DBG_ASSERT(nCurrPara >= 0 && nCurrPara <= USHRT_MAX &&
@@ -485,7 +477,6 @@
         }
         return aRect;
     }
-    	//IAccessibility2 Implementation 2009-----
 	//the input argument is the index(including "\n" ) in the string.
 	//the function will calculate the actual index(not including "\n") in the string.
 	//and return true if the index is just at a "\n"
@@ -537,7 +528,6 @@
 		}
 		return sal_False;
 	}
-	//-----IAccessibility2 Implementation 2009
 	//------------------------------------------------------------------------
 	//
 	// AccessibleStaticTextBase implementation
@@ -726,10 +716,8 @@
     uno::Sequence< beans::PropertyValue > SAL_CALL AccessibleStaticTextBase::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (lang::IndexOutOfBoundsException, uno::RuntimeException)
     {
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
-	//IAccessibility2 Implementation 2009-----
 		//get the actual index without "\n"
 		mpImpl->RemoveLineBreakCount( nIndex );
-	//IAccessibility2 Implementation 2009-----
 
         EPosition aPos( mpImpl->Index2Internal(nIndex) );
 
@@ -761,10 +749,8 @@
         sal_Int32 i, nCount, nParas;
         for( i=0, nCount=0, nParas=mpImpl->GetParagraphCount(); i<nParas; ++i )
             nCount += mpImpl->GetParagraph(i).getCharacterCount();
-	//IAccessibility2 Implementation 2009-----
 		//count on the number of "\n" which equals number of paragraphs decrease 1.
 		nCount = nCount + (nParas-1);
-	//IAccessibility2 Implementation 2009-----
         return nCount;
     }
 
@@ -867,7 +853,6 @@
 
         if( nStartIndex > nEndIndex )
             ::std::swap(nStartIndex, nEndIndex);
-		//IAccessibility2 Implementation 2009-----
 		//if startindex equals endindex we will get nothing. So return an empty string directly.
 		if ( nStartIndex == nEndIndex )
 		{
@@ -907,21 +892,16 @@
         {
 			//we don't return the string directly now for that we have to do some further process for "\n"
 			aRes = mpImpl->GetParagraph( aStartIndex.nPara ).getTextRange( aStartIndex.nIndex, aEndIndex.nIndex );
-            //return mpImpl->GetParagraph( aStartIndex.nPara ).getTextRange( aStartIndex.nIndex, aEndIndex.nIndex );
-			//-----IAccessibility2 Implementation 2009
         }
         else
         {
             sal_Int32 i( aStartIndex.nPara );
-	    		//IAccessibility2 Implementation 2009-----
 	            aRes = mpImpl->GetParagraph(i).getTextRange( aStartIndex.nIndex,
                                                                         mpImpl->GetParagraph(i).getCharacterCount()/*-1*/);
-			//-----IAccessibility2 Implementation 2009
             ++i;
 
             // paragraphs inbetween are fully included
             for( ; i<aEndIndex.nPara; ++i )
-	    //IAccessibility2 Implementation 2009-----
 			{
 				aRes += rtl::OUString(cNewLine);
                 aRes += mpImpl->GetParagraph(i).getText();
@@ -950,16 +930,13 @@
 			aRes += rtl::OUString(cNewLine);
 		}
 		return aRes;
-		//-----IAccessibility2 Implementation 2009
     }
 
     ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleStaticTextBase::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
     {
-    	//IAccessibility2 Implementation 2009-----
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
 
 		sal_Bool bLineBreak = mpImpl->RemoveLineBreakCount( nIndex );
-	//-----IAccessibility2 Implementation 2009
         EPosition aPos( mpImpl->Range2Internal(nIndex) );
 
         ::com::sun::star::accessibility::TextSegment aResult;
@@ -979,7 +956,6 @@
             aResult.SegmentStart = mpImpl->Internal2Index( EPosition( aPos.nPara, 0 ) );
             aResult.SegmentEnd = aResult.SegmentStart + aResult.SegmentText.getLength();
         }
-	//IAccessibility2 Implementation 2009-----
         else if ( AccessibleTextType::ATTRIBUTE_RUN == aTextType )
         {
               SvxAccessibleTextAdapter& rTextForwarder = mpImpl->GetParagraph( aPos.nIndex ).GetTextForwarder();
@@ -991,7 +967,6 @@
                      aResult.SegmentEnd = nEndIndex;
               }
         }
-	//-----IAccessibility2 Implementation 2009
         else
         {
             // No special handling required, forward to wrapped class
@@ -999,12 +974,10 @@
 
             // #112814# Adapt the start index with the paragraph offset
             mpImpl->CorrectTextSegment( aResult, aPos.nPara );
-	    //IAccessibility2 Implementation 2009-----
 			if ( bLineBreak )
 			{
 				aResult.SegmentText = rtl::OUString(cNewLine);
 			}
-	    //-----IAccessibility2 Implementation 2009
         }
 
         return aResult;
@@ -1013,10 +986,8 @@
     ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleStaticTextBase::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
     {
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
-		//IAccessibility2 Implementation 2009-----
 		sal_Int32 nOldIdx = nIndex;
 		sal_Bool bLineBreak =  mpImpl->RemoveLineBreakCount( nIndex );
-		//-----IAccessibility2 Implementation 2009
         EPosition aPos( mpImpl->Range2Internal(nIndex) );
 
         ::com::sun::star::accessibility::TextSegment aResult;
@@ -1048,12 +1019,10 @@
 
             // #112814# Adapt the start index with the paragraph offset
             mpImpl->CorrectTextSegment( aResult, aPos.nPara );
-			//IAccessibility2 Implementation 2009-----
 			if ( bLineBreak && (nOldIdx-1) >= 0)
 			{
 				aResult = getTextAtIndex( nOldIdx-1, aTextType );
 			}
-			//-----IAccessibility2 Implementation 2009			
         }
 
         return aResult;
@@ -1062,11 +1031,9 @@
     ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleStaticTextBase::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
     {
         ::vos::OGuard aGuard( Application::GetSolarMutex() );
-	//IAccessibility2 Implementation 2009-----
 		sal_Int32 nTemp = nIndex+1;
 		sal_Bool bLineBreak = mpImpl->RemoveLineBreakCount( nTemp );
 		mpImpl->RemoveLineBreakCount( nIndex );
-	//-----IAccessibility2 Implementation 2009
         EPosition aPos( mpImpl->Range2Internal(nIndex) );
 
         ::com::sun::star::accessibility::TextSegment aResult;
@@ -1092,12 +1059,10 @@
 
             // #112814# Adapt the start index with the paragraph offset
             mpImpl->CorrectTextSegment( aResult, aPos.nPara );
-			//IAccessibility2 Implementation 2009-----
 			if ( bLineBreak )
 			{
 				aResult.SegmentText = rtl::OUString(cNewLine) + aResult.SegmentText;
 			}
-			//-----IAccessibility2 Implementation 2009
        }
 
         return aResult;
diff --git a/main/editeng/source/editeng/editdbg.cxx b/main/editeng/source/editeng/editdbg.cxx
index ad76503..ddc18b9 100644
--- a/main/editeng/source/editeng/editdbg.cxx
+++ b/main/editeng/source/editeng/editdbg.cxx
@@ -454,7 +454,7 @@
 	fprintf( fp, "\n\n================================================================================" );
 	fprintf( fp, "\n==================   EditEngine & Views   ======================================" );
 	fprintf( fp, "\n================================================================================" );
-	fprintf( fp, "\nControl: %"SAL_PRIxUINT32, pEE->GetControlWord() );
+	fprintf( fp, "\nControl: %" SAL_PRIxUINT32, pEE->GetControlWord() );
 	fprintf( fp, "\nRefMapMode: %i", pEE->pImpEditEngine->pRefDev->GetMapMode().GetMapUnit() );
 	fprintf( fp, "\nPaperSize: %li x %li", pEE->GetPaperSize().Width(), pEE->GetPaperSize().Height() );
 	fprintf( fp, "\nMaxAutoPaperSize: %li x %li", pEE->GetMaxAutoPaperSize().Width(), pEE->GetMaxAutoPaperSize().Height() );
diff --git a/main/editeng/source/editeng/edtspell.cxx b/main/editeng/source/editeng/edtspell.cxx
index bd22ada..95c85ec 100644
--- a/main/editeng/source/editeng/edtspell.cxx
+++ b/main/editeng/source/editeng/edtspell.cxx
@@ -140,9 +140,7 @@
 	if ( pSpellInfo->bMultipleDoc )
 	{
 		bMore = pImpEE->GetEditEnginePtr()->SpellNextDocument();
-		//IAccessibility2 Implementation 2009-----
 		SetCurTextObj( pImpEE->GetEditEnginePtr()->GetCurTextObj() );
-		//-----IAccessibility2 Implementation 2009
 		if ( bMore )
 		{
 			// Der Text wurde in diese Engine getreten, bei Rueckwaerts
diff --git a/main/editeng/source/editeng/impedit.cxx b/main/editeng/source/editeng/impedit.cxx
index dd90140..c2714ad 100644
--- a/main/editeng/source/editeng/impedit.cxx
+++ b/main/editeng/source/editeng/impedit.cxx
@@ -122,7 +122,6 @@
 
     if ( pEditEngine->pImpEditEngine->GetNotifyHdl().IsSet() )
     {
-    //IAccessibility2 Implementation 2009-----
 		const EditDoc& rDoc = pEditEngine->pImpEditEngine->GetEditDoc();
 		const EditPaM pmEnd = rDoc.GetEndPaM();
 		EENotifyType eNotifyType;
@@ -138,7 +137,6 @@
 		}
         //EENotify aNotify( EE_NOTIFY_TEXTVIEWSELECTIONCHANGED );
         EENotify aNotify( eNotifyType );
-	//-----IAccessibility2 Implementation 2009
         aNotify.pEditEngine = pEditEngine;
         aNotify.pEditView = GetEditViewPtr();
         pEditEngine->pImpEditEngine->CallNotify( aNotify );
diff --git a/main/editeng/source/editeng/impedit.hxx b/main/editeng/source/editeng/impedit.hxx
index bd846b2..a1ebd74 100644
--- a/main/editeng/source/editeng/impedit.hxx
+++ b/main/editeng/source/editeng/impedit.hxx
@@ -480,7 +480,6 @@
 	sal_Bool			bInSelection;
 	sal_Bool			bIsInUndo;
 	sal_Bool			bUpdate;
-	// IAccessible2 migration fix
 	sal_Bool			bUpdateForAcc;
 	sal_Bool			bUndoEnabled;
 	sal_Bool			bOwnerOfRefDev;
@@ -715,7 +714,6 @@
 
 	void					SetUpdateMode( sal_Bool bUp, EditView* pCurView = 0, sal_Bool bForceUpdate = sal_False );
 	sal_Bool				GetUpdateMode()	const	{ return bUpdate; }
-	// IAccessible2 migration fix
 	void					SetUpdateModeForAcc( sal_Bool bUp);
 	sal_Bool				GetUpdateModeForAcc();
 
diff --git a/main/editeng/source/editeng/impedit2.cxx b/main/editeng/source/editeng/impedit2.cxx
index 95956a4..eae1576 100644
--- a/main/editeng/source/editeng/impedit2.cxx
+++ b/main/editeng/source/editeng/impedit2.cxx
@@ -136,7 +136,7 @@
 	bIsFormatting 		= sal_False;
 	bFormatted			= sal_False;
 	bUpdate 			= sal_True;
-	bUpdateForAcc		= TRUE;		//IAccessible2 implementation 2009
+	bUpdateForAcc		= TRUE;
     bUseAutoColor       = sal_True;
     bForceAutoColor     = sal_False;
     bAddExtLeading      = sal_False;
@@ -2721,7 +2721,7 @@
                         ++nChgPos;
 
                     xub_StrLen nChgLen = static_cast< xub_StrLen >( nNewLen - nChgPos );
-					String aChgText( aNewText.copy( nChgPos ), nChgLen );
+					String aChgText( aNewText.copy( nChgPos ).getStr(), nChgLen );
 
                     // select text from first pos to be changed to current pos
                     EditSelection aSel( EditPaM( aPaM.GetNode(), (sal_uInt16) nChgPos ), aPaM );
diff --git a/main/editeng/source/editeng/impedit3.cxx b/main/editeng/source/editeng/impedit3.cxx
index 1f4ca2f..14c3ddf 100644
--- a/main/editeng/source/editeng/impedit3.cxx
+++ b/main/editeng/source/editeng/impedit3.cxx
@@ -368,8 +368,6 @@
 
 void ImpEditEngine::FormatDoc()
 {
-	// IAccessible2 migration fix
-	//if ( !GetUpdateMode() || IsFormatting() )
 	if ( !GetUpdateMode() || IsFormatting() || !GetUpdateModeForAcc())
 		return;
 
@@ -3862,16 +3860,16 @@
 	DBG_ASSERT( IsInUndo(), "ConnectContent nur fuer Undo()!" );
 	return ImpConnectParagraphs( pLeftNode, pRightNode, bBackward );
 }
-//IAccessible2 migration fix
+
 void ImpEditEngine::SetUpdateModeForAcc( sal_Bool bUp)
 {
 	bUpdateForAcc = bUp;
 }
+
 sal_Bool ImpEditEngine::GetUpdateModeForAcc()
 {
 	return bUpdateForAcc;
 }
-//End
 
 void ImpEditEngine::SetUpdateMode( sal_Bool bUp, EditView* pCurView, sal_Bool bForceUpdate )
 {
diff --git a/main/editeng/source/misc/splwrap.cxx b/main/editeng/source/misc/splwrap.cxx
index e9c9337..ac00cf5 100644
--- a/main/editeng/source/misc/splwrap.cxx
+++ b/main/editeng/source/misc/splwrap.cxx
@@ -164,13 +164,13 @@
 
 	pWin		( pWn ),
 	xSpell		( xSpellChecker ),
+	mpTextObj( NULL),
 	bOtherCntnt	( bOther ),
 	bDialog		( sal_False ),
 	bHyphen		( sal_False ),
 	bAuto		( sal_False ),
 	bStartChk	( bOther ),
     bRevAllowed ( bRevAllow ),
-	mpTextObj( NULL),
     bAllRight   ( bIsAllRight )
 {
 	Reference< beans::XPropertySet >  xProp( SvxGetLinguPropertySet() );
@@ -190,6 +190,7 @@
 		const sal_Bool bStart, const sal_Bool bOther ) :
 	pWin		( pWn ),
 	xHyph		( xHyphenator ),
+	mpTextObj( NULL),
 	bOtherCntnt	( bOther ),
 	bDialog		( sal_False ),
 	bHyphen		( sal_False ),
@@ -199,7 +200,6 @@
 	bEndDone	( bReverse && bStart && !bOther ),
 	bStartChk	( bOther ),
     bRevAllowed ( sal_False ),
-	mpTextObj( NULL),
     bAllRight   ( sal_True )
 {
 }
diff --git a/main/editeng/source/uno/unoedhlp.cxx b/main/editeng/source/uno/unoedhlp.cxx
index b2adfa5..3a06879 100644
--- a/main/editeng/source/uno/unoedhlp.cxx
+++ b/main/editeng/source/uno/unoedhlp.cxx
@@ -28,10 +28,8 @@
 #include <editeng/unoedhlp.hxx>
 #include <editeng/editdata.hxx>
 #include <editeng/editeng.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <svl/itemset.hxx>
 
-//-----IAccessibility2 Implementation 2009
 //------------------------------------------------------------------------
 
 TYPEINIT1( SvxEditSourceHint, TextHint );
@@ -79,9 +77,7 @@
 {
     mnEnd = n; 
 }
-//IAccessibility2 Implementation 2009-----
 TYPEINIT1( SvxEditSourceHintEndPara , SvxEditSourceHint );
-//-----IAccessibility2 Implementation 2009
 //------------------------------------------------------------------------
 
 ::std::auto_ptr<SfxHint> SvxEditSourceHelper::EENotification2Hint( EENotify* aNotify )
@@ -122,10 +118,8 @@
 
             case EE_NOTIFY_INPUT_END:
                 return ::std::auto_ptr<SfxHint>( new TextHint( TEXT_HINT_INPUT_END, 0 ) );
-	//IAccessibility2 Implementation 2009-----
 			case EE_NOTIFY_TEXTVIEWSELECTIONCHANGED_ENDD_PARA:
 				return ::std::auto_ptr<SfxHint>( new SvxEditSourceHintEndPara( EDITSOURCE_HINT_SELECTIONCHANGED ) );
-	//-----IAccessibility2 Implementation 2009
             default:
                 DBG_ERROR( "SvxEditSourceHelper::EENotification2Hint unknown notification" );
                 break;
@@ -140,8 +134,7 @@
 	// Need to verify implementation with AT (IA2 and ATK)
 	// Old implementation at the end of the method for reference...
 
-#if 1 // IA2 CWS
-
+#if 1
     //added dummy attributes for the default text
 	EECharAttribArray aCharAttribs, aTempCharAttribs;
 	rEE.GetCharAttribs( nPara, aTempCharAttribs );
diff --git a/main/editeng/source/uno/unoedprx.cxx b/main/editeng/source/uno/unoedprx.cxx
index 5e74865..3f77fb6 100644
--- a/main/editeng/source/uno/unoedprx.cxx
+++ b/main/editeng/source/uno/unoedprx.cxx
@@ -508,24 +508,6 @@
     EBulletInfo aBulletInfo1 = GetBulletInfo( static_cast< sal_uInt16 >(aStartIndex.GetParagraph()) );
     EBulletInfo aBulletInfo2 = GetBulletInfo( static_cast< sal_uInt16 >(aEndIndex.GetParagraph()) );
 
-    //IAccessibility2 Implementation 2009-----
-	// MT: This was done in OOo, commented out in IA2 CWS...
-    /*
-    if( aStartIndex.InBullet() )
-    {
-        // prepend leading bullet
-        String sBullet = aBulletInfo1.aText;
-
-        DBG_ASSERT(aStartIndex.GetBulletOffset() >= 0 &&
-                   aStartIndex.GetBulletOffset() <= USHRT_MAX,
-                   "SvxAccessibleTextIndex::GetText: index value overflow");
-
-        sBullet.Erase(0, static_cast< sal_uInt16 > (aStartIndex.GetBulletOffset()) );
-
-        sBullet += sStr;
-        sStr = sBullet;
-    }*/
-    //-----IAccessibility2 Implementation 2009
     if( aEndIndex.InBullet() )
     {
         // append trailing bullet
@@ -754,7 +736,6 @@
 
     return mrTextForwarder->GetBulletInfo( nPara );
 }
-//IAccessible2 Implementation 2009----
 void	SvxAccessibleTextAdapter::SetUpdateModeForAcc( sal_Bool bUp)
 {
 	return mrTextForwarder->SetUpdateModeForAcc( bUp );
@@ -763,7 +744,6 @@
 {
 	return mrTextForwarder->GetUpdateModeForAcc( );
 }
-//-----IAccessible2 Implementation 2009
 Rectangle SvxAccessibleTextAdapter::GetCharBounds( sal_uInt16 nPara, sal_uInt16 nIndex ) const
 {
     DBG_ASSERT(mrTextForwarder, "SvxAccessibleTextAdapter: no forwarder");
diff --git a/main/editeng/source/uno/unonrule.cxx b/main/editeng/source/uno/unonrule.cxx
index 58dbab3..85c143a 100644
--- a/main/editeng/source/uno/unonrule.cxx
+++ b/main/editeng/source/uno/unonrule.cxx
@@ -221,9 +221,7 @@
 	}
 
 	{
-	//IAccessibility2 Implementation 2009-----
 		if(SVX_NUM_CHAR_SPECIAL == rFmt.GetNumberingType())
-	//-----IAccessibility2 Implementation 2009
 		{
 		sal_Unicode nCode = rFmt.GetBulletChar();
 		OUString aStr( &nCode, 1 );
diff --git a/main/embeddedobj/source/msole/olepersist.cxx b/main/embeddedobj/source/msole/olepersist.cxx
index 57e60ed..9dbbf3d 100644
--- a/main/embeddedobj/source/msole/olepersist.cxx
+++ b/main/embeddedobj/source/msole/olepersist.cxx
@@ -1118,7 +1118,7 @@
 		m_pOleComponent->StoreOwnTmpIfNecessary();
 
 	// now all the changes should be in temporary location
-	if ( !m_aTempURL )
+	if( m_aTempURL.isEmpty() )
 		throw uno::RuntimeException();
 
 	// open temporary file for reading
@@ -2087,7 +2087,7 @@
 		catch ( uno::Exception& )
 		{
 			delete pNewOleComponent;
-			if ( m_aTempURL )
+			if( !m_aTempURL.isEmpty() )
        			KillFile_Impl( m_aTempURL, m_xFactory );
 			m_aTempURL = aOldTempURL;
 			throw;
@@ -2099,7 +2099,7 @@
 		catch( uno::Exception& )
 		{
 			delete pNewOleComponent;
-			if ( m_aTempURL )
+			if( !m_aTempURL.isEmpty() )
        			KillFile_Impl( m_aTempURL, m_xFactory );
 			m_aTempURL = aOldTempURL;
 			throw;
diff --git a/main/extensions/source/bibliography/general.cxx b/main/extensions/source/bibliography/general.cxx
index 2805ce1..7f5c549 100644
--- a/main/extensions/source/bibliography/general.cxx
+++ b/main/extensions/source/bibliography/general.cxx
@@ -508,7 +508,7 @@
 				{
 			        ::rtl::OUString sId = ::rtl::OUString::createFromAscii( INET_HID_SCHEME );
                     DBG_ASSERT( INetURLObject( rtl::OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8 ) ).GetProtocol() == INET_PROT_NOT_VALID, "Wrong HelpId!" );
-			        sId += ::rtl::OUString( sHelpId, sHelpId.getLength(), RTL_TEXTENCODING_UTF8 );
+			        sId += ::rtl::OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8 );
 			        xPropSet->setPropertyValue( uProp, makeAny( sId ) );
 				}
 
diff --git a/main/extensions/source/config/ldap/ldapaccess.cxx b/main/extensions/source/config/ldap/ldapaccess.cxx
index ead05a3..9923b50 100644
--- a/main/extensions/source/config/ldap/ldapaccess.cxx
+++ b/main/extensions/source/config/ldap/ldapaccess.cxx
@@ -150,8 +150,8 @@
         
         // Do the bind
 		LdapErrCode retCode = (*s_p_simple_bind_s)(mConnection,
-                                               mLdapDefinition.mAnonUser ,
-                                               mLdapDefinition.mAnonCredentials) ;
+                                               mLdapDefinition.mAnonUser.getStr(),
+                                               mLdapDefinition.mAnonCredentials.getStr()) ;
 
 		checkLdapReturnCode("SimpleBind", retCode, mConnection) ;
 	}
@@ -170,14 +170,14 @@
 
     if (mLdapDefinition.mPort == 0) mLdapDefinition.mPort = LDAP_PORT;
 
-    mConnection = (*s_p_init)(mLdapDefinition.mServer, 
+    mConnection = (*s_p_init)( mLdapDefinition.mServer.getStr(), 
                             mLdapDefinition.mPort) ;
     if (mConnection == NULL) 
     {
         rtl::OUStringBuffer message ;
 
         message.appendAscii("Cannot initialise connection to LDAP server ") ;
-        message.appendAscii(mLdapDefinition.mServer) ;
+        message.appendAscii( mLdapDefinition.mServer.getStr());
         message.appendAscii(":") ;
         message.append(mLdapDefinition.mPort) ;
         throw ldap::LdapConnectionException(message.makeStringAndClear(), 
@@ -197,7 +197,7 @@
 
     LdapMessageHolder result;
     LdapErrCode retCode = (*s_p_search_s)(mConnection,
-									  aUserDn,
+									  aUserDn.getStr(),
 									  LDAP_SCOPE_BASE,
 									  "(objectclass=*)",
 									  0,
@@ -231,7 +231,7 @@
     {
         throw lang::IllegalArgumentException(
 			rtl::OUString(RTL_CONSTASCII_USTRINGPARAM
-			("LdapConnection::findUserDn -User id is empty")),
+			("LdapConnection::findUserDn -User id is empty")).getStr(),
 				NULL, 0) ;
     }
     
@@ -247,9 +247,9 @@
     attributes[0]= const_cast<sal_Char *>(LDAP_NO_ATTRS);
     attributes[1]= NULL;
     LdapErrCode retCode = (*s_p_search_s)(mConnection, 
-                                      mLdapDefinition.mBaseDN,
+                                      mLdapDefinition.mBaseDN.getStr(),
                                       LDAP_SCOPE_SUBTREE,
-                                      filter.makeStringAndClear(), attributes, 0, &result.msg) ;
+                                      filter.getStr(), attributes, 0, &result.msg) ;
 
     checkLdapReturnCode("FindUserDn", retCode,mConnection) ;
     rtl::OString userDn ;
diff --git a/main/extensions/source/logging/filehandler.cxx b/main/extensions/source/logging/filehandler.cxx
index b7204ba..a59ebe5 100644
--- a/main/extensions/source/logging/filehandler.cxx
+++ b/main/extensions/source/logging/filehandler.cxx
@@ -203,7 +203,7 @@
                 sMessage.append( ::rtl::OString( m_sFileURL.getStr(), m_sFileURL.getLength(), osl_getThreadTextEncoding() ) );
                 sMessage.append( "\nerror code: " );
                 sMessage.append( (sal_Int32)res );
-                OSL_ENSURE( false, sMessage.makeStringAndClear() );
+                OSL_ENSURE( false, sMessage.getStr() );
             }
         #endif
             if ( m_eFileValidity == eValid )
diff --git a/main/extensions/source/propctrlr/pcrcommon.cxx b/main/extensions/source/propctrlr/pcrcommon.cxx
index e32eeac..9799a60 100644
--- a/main/extensions/source/propctrlr/pcrcommon.cxx
+++ b/main/extensions/source/propctrlr/pcrcommon.cxx
@@ -61,7 +61,7 @@
     ::rtl::OUString HelpIdUrl::getHelpURL( const rtl::OString& sHelpId )
     {
         ::rtl::OUStringBuffer aBuffer;
-        ::rtl::OUString aTmp( sHelpId, sHelpId.getLength(), RTL_TEXTENCODING_UTF8 );
+        ::rtl::OUString aTmp( rtl::OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8 ));
         INetURLObject aHID( aTmp );
         if ( aHID.GetProtocol() == INET_PROT_NOT_VALID )
             aBuffer.appendAscii( INET_HID_SCHEME );
diff --git a/main/extensions/source/update/check/updatecheckconfig.cxx b/main/extensions/source/update/check/updatecheckconfig.cxx
index 75ea9e1..fe35489 100644
--- a/main/extensions/source/update/check/updatecheckconfig.cxx
+++ b/main/extensions/source/update/check/updatecheckconfig.cxx
@@ -183,7 +183,7 @@
     rtl::OString aStr(RELEASE_NOTE);
     for(sal_Int32 n=1; n < 6; ++n )
     {
-        rtl::OUString aUStr = getStringValue(aStr + rtl::OString::valueOf(n));
+        rtl::OUString aUStr = getStringValue( (aStr + rtl::OString::valueOf(n)).getStr());
         if( aUStr.getLength() > 0 )
             rInfo.ReleaseNotes.push_back(ReleaseNote((sal_Int8) n, aUStr));
     }
diff --git a/main/filter/source/msfilter/eschesdo.hxx b/main/filter/source/msfilter/eschesdo.hxx
index d80caa9..e9adae8 100644
--- a/main/filter/source/msfilter/eschesdo.hxx
+++ b/main/filter/source/msfilter/eschesdo.hxx
@@ -61,6 +61,9 @@
 	sal_Int32 ImplGetInt32PropertyValue( const sal_Unicode* pStr, sal_uInt32 nDef = 0 )
 	{ return ImplGetPropertyValue( pStr ) ? *(sal_Int32*)mAny.getValue() : nDef; }
 
+	sal_Bool ImplGetPropertyValue( const rtl::OUString& rStr ) { return ImplGetPropertyValue( rStr.getStr() ); }
+	sal_Bool ImplGetInt32PropertyValue( const rtl::OUString& rStr ) { return ImplGetInt32PropertyValue( rStr.getStr() ); }
+
 	const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >&	GetShapeRef() const 	{ return mXShape; }
 	const ::com::sun::star::uno::Any&		GetUsrAny() const		{ return mAny; }
 	const String&		GetType() const 		{ return mType; }
diff --git a/main/filter/source/msfilter/msocximex.cxx b/main/filter/source/msfilter/msocximex.cxx
index 1894bc3..5940f40 100644
--- a/main/filter/source/msfilter/msocximex.cxx
+++ b/main/filter/source/msfilter/msocximex.cxx
@@ -131,7 +131,7 @@
         uno::Reference<lang::XMultiServiceFactory > xMSF( ::comphelper::getProcessServiceFactory(),
                                                       uno::UNO_QUERY_THROW );
         uno::Reference< com::sun::star::ucb::XSimpleFileAccess> xSFA( xMSF->createInstance(
-                                                       S2U("com.sun.star.ucb.SimpleFileAccess" ) ),
+                                                       OUString::createFromAscii( "com.sun.star.ucb.SimpleFileAccess") ),
                                                        uno::UNO_QUERY_THROW );
         OUString ext;
         sal_Int32 index = 0;
diff --git a/main/forms/source/misc/services.cxx b/main/forms/source/misc/services.cxx
index 003ae52..8a11219 100644
--- a/main/forms/source/misc/services.cxx
+++ b/main/forms/source/misc/services.cxx
@@ -347,7 +347,7 @@
 
 	for (sal_Int32 i=0; i<nClasses; ++i, ++pClasses, ++pServices, ++pFunctionsAsInts)
 	{
-		if (rtl_ustr_ascii_compare(*pClasses, _pImplName) == 0)
+		if( pClasses->compareToAscii( _pImplName) == 0)
 		{
 			::cppu::ComponentInstantiation aCurrentCreateFunction =
 				reinterpret_cast< ::cppu::ComponentInstantiation>(*pFunctionsAsInts);
diff --git a/main/formula/source/ui/dlg/formdlgs.src b/main/formula/source/ui/dlg/formdlgs.src
index 7428942..6f3b072 100644
--- a/main/formula/source/ui/dlg/formdlgs.src
+++ b/main/formula/source/ui/dlg/formdlgs.src
@@ -225,17 +225,12 @@
 	    Right = TRUE ;
 	    Text [ en-US ] = "Function result" ;
     };
-//IAccessibility2 Implementation 2009-----
-    //Window WND_RESULT
 	FixedText WND_RESULT
-//-----IAccessibility2 Implementation 2009
     {
 	    Border = TRUE ;
 	    Pos = MAP_APPFONT ( 255 , 4 ) ;
 	    Size = MAP_APPFONT ( 60 , 12 ) ;
-//IAccessibility2 Implementation 2009-----
 		Text [ en-US ] = "Function result" ;
-//-----IAccessibility2 Implementation 2009
     };
     FixedText FT_FORMULA_RESULT
     {
diff --git a/main/formula/source/ui/dlg/formula.cxx b/main/formula/source/ui/dlg/formula.cxx
index 26dead4..64a816f 100644
--- a/main/formula/source/ui/dlg/formula.cxx
+++ b/main/formula/source/ui/dlg/formula.cxx
@@ -309,11 +309,9 @@
     aRefBtn.Hide();
 
     pMEdit = aMEFormula.GetEdit();
-	//IAccessibility2 Implementation 2009-----
 	aMEFormula.SetAccessibleName(aFtFormula.GetText());
 	if (pMEdit)
 		pMEdit->SetAccessibleName(aFtFormula.GetText());
-	//-----IAccessibility2 Implementation 2009
     m_aEditHelpId = pMEdit->GetHelpId();
     pMEdit->SetUniqueId( m_aEditHelpId );
 
diff --git a/main/formula/source/ui/dlg/funcutl.cxx b/main/formula/source/ui/dlg/funcutl.cxx
index 97c2750..ffa88d7 100644
--- a/main/formula/source/ui/dlg/funcutl.cxx
+++ b/main/formula/source/ui/dlg/funcutl.cxx
@@ -34,9 +34,7 @@
 #include "ControlHelper.hxx"
 #include "ModuleHelper.hxx"
 #include "ForResId.hrc"
-// IAccessibility2 implementation 2009. ------
 #include "com/sun/star/accessibility/AccessibleRole.hpp"
-// ------ IAccessibility2 implementation 2009.
 
 
 namespace formula
@@ -476,7 +474,6 @@
 		pRefBtn->Show();
 	}
 }
-//IAccessibility2 Implementation 2009-----
 void ArgInput::UpdateAccessibleNames()
 {
 	String aArgName = String::CreateFromAscii(":");
diff --git a/main/formula/source/ui/resource/ModuleHelper.cxx b/main/formula/source/ui/resource/ModuleHelper.cxx
index 8f516f9..0b606ff 100644
--- a/main/formula/source/ui/resource/ModuleHelper.cxx
+++ b/main/formula/source/ui/resource/ModuleHelper.cxx
@@ -87,8 +87,7 @@
 	if (!m_pRessources)
 	{
 		// create a manager with a fixed prefix
-        rtl::OString sName = rtl::OString( "forui" );
-		m_pRessources = ResMgr::CreateResMgr(sName);
+		m_pRessources = ResMgr::CreateResMgr( "forui");
 	}
 	return m_pRessources;
 }
diff --git a/main/fpicker/source/aqua/FilterHelper.cxx b/main/fpicker/source/aqua/FilterHelper.cxx
index b8155e3..284ed9a 100644
--- a/main/fpicker/source/aqua/FilterHelper.cxx
+++ b/main/fpicker/source/aqua/FilterHelper.cxx
@@ -105,7 +105,7 @@
     int nBracketLen = -1;
     int nBracketEnd = -1;
     rtl::OUString rFilterName = aFilterName;
-    const sal_Unicode *pStr = rFilterName;
+    const sal_Unicode* pStr = rFilterName.getStr();
     rtl::OUString aRealName = rFilterName;
 
     for( i = aRealName.getLength() - 1; i > 0; i-- )
diff --git a/main/fpicker/source/unx/gnome/SalGtkFilePicker.cxx b/main/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
index c9680e6..1a1f4c4 100644
--- a/main/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
+++ b/main/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
@@ -286,11 +286,11 @@
         case 0:
             break;
         case 1:
-            gtk_expander_set_expanded(GTK_EXPANDER(m_pFilterExpander), sal_True);
+            gtk_expander_set_expanded( GTK_EXPANDER(m_pFilterExpander), sal_True);
             break;
         case 2:
             expandexpanders(GTK_CONTAINER(m_pDialog));
-            gtk_expander_set_expanded(GTK_EXPANDER(m_pFilterExpander), sal_True);
+            gtk_expander_set_expanded( GTK_EXPANDER(m_pFilterExpander), sal_True);
             break;
     }
 
@@ -530,7 +530,7 @@
 	int i;
 	int nBracketLen = -1;
 	int nBracketEnd = -1;
-	const sal_Unicode *pStr = rFilterName;
+	const sal_Unicode* pStr = rFilterName.getStr();
 	OUString aRealName = rFilterName;
 	
 	for( i = aRealName.getLength() - 1; i > 0; i-- )
@@ -1905,7 +1905,7 @@
 
 	OUString aShrunkName = shrinkFilterName( rFilter );
 	OString aFilterName = rtl::OUStringToOString( aShrunkName, RTL_TEXTENCODING_UTF8 );
-	gtk_file_filter_set_name( filter, aFilterName );
+	gtk_file_filter_set_name( filter, aFilterName.getStr() );
 
     static const OUString aStarDot = OUString::createFromAscii( "*." );
     OUString aTokens;
@@ -1929,7 +1929,7 @@
                 aTokens = aTokens += aToken;
                 gtk_file_filter_add_custom (filter, GTK_FILE_FILTER_URI,
                     case_insensitive_filter, 
-                    g_strdup( rtl::OUStringToOString( aToken, RTL_TEXTENCODING_UTF8 ) ),
+                    g_strdup( rtl::OUStringToOString( aToken, RTL_TEXTENCODING_UTF8).getStr() ),
                     (GDestroyNotify) g_free );
 
 	            OSL_TRACE( "fustering with %s\n", rtl::OUStringToOString( aToken, RTL_TEXTENCODING_UTF8 ).getStr());
@@ -1938,8 +1938,7 @@
             else
             {
                 g_warning( "Duff filter token '%s'\n", 
-                    (const sal_Char *) rtl::OUStringToOString( 
-                        rType.getToken( 0, ';', nIndex ), RTL_TEXTENCODING_UTF8 ) );
+                    rtl::OUStringToOString( rType.getToken( 0, ';', nIndex ), RTL_TEXTENCODING_UTF8 ).getStr());
             }
 #endif
 		}
diff --git a/main/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx b/main/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
index 89b2cb8..f9b7ce7 100644
--- a/main/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
+++ b/main/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
@@ -701,7 +701,7 @@
 #ifdef __MINGW32__
     HRESULT hResult = SHCreateItemFromParsingName ( reinterpret_cast<LPCTSTR>(sDirectory.getStr()), NULL, IID_IShellItem, reinterpret_cast<void**>(&pFolder) );
 #else
-    HRESULT hResult = SHCreateItemFromParsingName ( sDirectory, NULL, IID_PPV_ARGS(&pFolder) );
+    HRESULT hResult = SHCreateItemFromParsingName( sDirectory.getStr(), NULL, IID_PPV_ARGS(&pFolder) );
 #endif
     if ( FAILED(hResult) )
         return;
@@ -894,7 +894,7 @@
 		#ifdef __MINGW32__
 			HRESULT hResult = SHCreateItemFromParsingName ( reinterpret_cast<LPCTSTR>(m_sDirectory.getStr()), NULL, IID_IShellItem, reinterpret_cast<void**>(&pFolder) );
 		#else
-			HRESULT hResult = SHCreateItemFromParsingName ( m_sDirectory, NULL, IID_PPV_ARGS(&pFolder) );
+			HRESULT hResult = SHCreateItemFromParsingName( m_sDirectory.getStr(), NULL, IID_PPV_ARGS(&pFolder) );
 		#endif
 		if ( SUCCEEDED(hResult) )
         {
diff --git a/main/fpicker/source/win32/filepicker/filepickerstate.cxx b/main/fpicker/source/win32/filepicker/filepickerstate.cxx
index ffa13e4..ffdc140 100644
--- a/main/fpicker/source/win32/filepicker/filepickerstate.cxx
+++ b/main/fpicker/source/win32/filepicker/filepickerstate.cxx
@@ -208,7 +208,7 @@
     if (path[1] == ':' && path[2] == '.' && path[3] == '\\')
     {
         // skip the '.'
-        return OUString(path, 2) + path.copy(3, path.getLength() - 3);        
+        return (path.copy(0,2) + path.copy(3)); 
     }    
     return path;   
 }
diff --git a/main/framework/inc/macros/debug/assertion.hxx b/main/framework/inc/macros/debug/assertion.hxx
index 8592ff1..3cca6ba 100644
--- a/main/framework/inc/macros/debug/assertion.hxx
+++ b/main/framework/inc/macros/debug/assertion.hxx
@@ -154,7 +154,7 @@
 						_sAssertBuffer.append( "\n\t\""			);												\
 						_sAssertBuffer.append( STEXT			);												\
 						_sAssertBuffer.append( "\"\n"			);												\
-						OSL_ENSURE( !( BCONDITION ), _sAssertBuffer.makeStringAndClear() );						\
+						OSL_ENSURE( !( BCONDITION ), _sAssertBuffer.getStr() );						\
 					}
 
 	#endif
diff --git a/main/framework/inc/macros/debug/logmechanism.hxx b/main/framework/inc/macros/debug/logmechanism.hxx
index 4574f90..f82745b 100644
--- a/main/framework/inc/macros/debug/logmechanism.hxx
+++ b/main/framework/inc/macros/debug/logmechanism.hxx
@@ -52,7 +52,7 @@
                     are handled wrong.
 	_____________________________________________________________________________________________________________*/
 
-	#define	WRITE_LOGFILE( SFILENAME, STEXT )																	\
+	inline void writeToLogFile( const char* SFILENAME, const char* STEXT )
 				{																								\
 					::rtl::OString	_swriteLogfileFileName	( SFILENAME	);										\
 					::rtl::OString	_swriteLogfileText		( STEXT		);										\
@@ -61,6 +61,10 @@
                     fclose ( pFile                                    );                                        \
 				}
 
+	inline void writeToLogFile( const char* pFILENAME, const rtl::OString& rTEXT ) { writeToLogFile( pFILENAME, rTEXT.getStr()); }
+
+	#define WRITE_LOGFILE( SFILENAME, STEXT ) { writeToLogFile( (SFILENAME), (STEXT) ); }
+
 	/*_____________________________________________________________________________________________________________
 		LOGTYPE
 
diff --git a/main/framework/source/layoutmanager/toolbarlayoutmanager.cxx b/main/framework/source/layoutmanager/toolbarlayoutmanager.cxx
index fb348b3..b8ddc52 100644
--- a/main/framework/source/layoutmanager/toolbarlayoutmanager.cxx
+++ b/main/framework/source/layoutmanager/toolbarlayoutmanager.cxx
@@ -1187,7 +1187,7 @@
         uno::Reference< ui::XUIElement > xUIElement;
         implts_createToolBar( aTbxResName, bNotify, xUIElement );
         
-        if ( aTitle && xUIElement.is() )
+        if ( !aTitle.isEmpty() && xUIElement.is() )
         {
             vos::OGuard aGuard( Application::GetSolarMutex() );
 
diff --git a/main/framework/source/loadenv/loadenv.cxx b/main/framework/source/loadenv/loadenv.cxx
index 07b0a07..a47bf48 100644
--- a/main/framework/source/loadenv/loadenv.cxx
+++ b/main/framework/source/loadenv/loadenv.cxx
@@ -187,11 +187,9 @@
           css::io::IOException               ,
           css::uno::RuntimeException         )
 {
-	//IAccessibility2 Implementation 2009-----
 #ifdef WNT	
 	CEnableAccessInterface e;
 #endif
-	//-----IAccessibility2 Implementation 2009
     css::uno::Reference< css::lang::XComponent > xComponent;
 
     try
diff --git a/main/framework/source/services/license.cxx b/main/framework/source/services/license.cxx
index c61b6a4..4a86f29 100644
--- a/main/framework/source/services/license.cxx
+++ b/main/framework/source/services/license.cxx
@@ -282,7 +282,7 @@
         ::rtl::OString aMgrName = ::rtl::OString("fwe");
         AllSettings aSettings(Application::GetSettings());
         aLocale = aSettings.GetUILocale();
-        ResMgr* pResMgr = ResMgr::SearchCreateResMgr(aMgrName, aLocale);
+        ResMgr* pResMgr = ResMgr::SearchCreateResMgr( aMgrName.getStr(), aLocale);
 
         aLangString = aLocale.Language;
         if ( aLocale.Country.getLength() != 0 )
diff --git a/main/framework/source/uielement/controlmenucontroller.cxx b/main/framework/source/uielement/controlmenucontroller.cxx
index a113af0..cc4a3c9 100644
--- a/main/framework/source/uielement/controlmenucontroller.cxx
+++ b/main/framework/source/uielement/controlmenucontroller.cxx
@@ -228,7 +228,7 @@
 {
     rtl::OUString aResName( RTL_CONSTASCII_USTRINGPARAM( "svx" ));
     
-    ResMgr* pResMgr = ResMgr::CreateResMgr( rtl::OUStringToOString( aResName, RTL_TEXTENCODING_ASCII_US ));
+    ResMgr* pResMgr = ResMgr::CreateResMgr( rtl::OUStringToOString( aResName, RTL_TEXTENCODING_ASCII_US ).getStr() );
     ResId aResId( m_bWasHiContrast ? RID_SVXIMGLIST_FMEXPL_HC : RID_SVXIMGLIST_FMEXPL, *pResMgr );
     aResId.SetRT( RSC_IMAGELIST );
 	
diff --git a/main/graphite/graphite-2.3.1.patch b/main/graphite/graphite-2.3.1.patch
index 508226a..aca7337 100644
--- a/main/graphite/graphite-2.3.1.patch
+++ b/main/graphite/graphite-2.3.1.patch
@@ -2360,6 +2360,17 @@
  	{
  	}
  
+--- misc/silgraphite-2.3.1/engine/include/graphite/Segment.h	2009-01-29 09:33:19.000000000 +0100
++++ misc/build/silgraphite-2.3.1/engine/include/graphite/Segment.h	2013-08-14 15:10:53.363864046 +0200
+@@ -64,7 +64,7 @@
+ 	virtual ~Segment();
+ 
+ 	// Basic copy constructor:
+-	Segment(Segment & seg);
++	Segment( const Segment&);
+ 
+ 	// For making modified copies of segments:
+ 	static Segment * LineContextSegment(Segment & seg, bool fStartLine, bool fEndLine);
 --- misc/build/silgraphite-2.3.1/engine/src/segment/Segment.cpp.bak	2010-06-23 19:59:54.611660400 +0700
 +++ misc/build/silgraphite-2.3.1/engine/src/segment/Segment.cpp	2010-06-23 21:30:16.335460400 +0700
 @@ -246,6 +246,8 @@
@@ -2371,6 +2382,15 @@
  
  //	m_psstrm = NULL;
  	m_prgslout = NULL;
+@@ -435,7 +435,7 @@
+ /*----------------------------------------------------------------------------------------------
+ 	Basic copy method.
+ ----------------------------------------------------------------------------------------------*/
+-Segment::Segment(Segment & seg)
++Segment::Segment( const Segment& seg)
+ {
+ 	int islout;
+
 @@ -2988,9 +2988,10 @@
  	return kresOk;
  }
diff --git a/main/i18npool/source/indexentry/indexentrysupplier_default.cxx b/main/i18npool/source/indexentry/indexentrysupplier_default.cxx
index 432fdd7..24b4070 100644
--- a/main/i18npool/source/indexentry/indexentrysupplier_default.cxx
+++ b/main/i18npool/source/indexentry/indexentrysupplier_default.cxx
@@ -174,7 +174,7 @@
     if (!keyStr.getLength()) {
         keyStr = LocaleData().getIndexKeysByAlgorithm(LOCALE_EN, 
                     LocaleData().getDefaultIndexAlgorithm(LOCALE_EN));
-        if (!keyStr)
+        if( keyStr.isEmpty() )
             throw RuntimeException();
     }
 
diff --git a/main/i18npool/source/localedata/saxparser.cxx b/main/i18npool/source/localedata/saxparser.cxx
index c013de1..1684ca9 100644
--- a/main/i18npool/source/localedata/saxparser.cxx
+++ b/main/i18npool/source/localedata/saxparser.cxx
@@ -271,7 +271,7 @@
 		source.sPublicId = sPublicId;
 
 		source.aInputStream = createStreamFromFile(
-			OUStringToOString( sSystemId , RTL_TEXTENCODING_ASCII_US) );
+			OUStringToOString( sSystemId.getStr(), RTL_TEXTENCODING_ASCII_US).getStr() );
 
 		return source;
 	}
diff --git a/main/idlc/source/idlccompile.cxx b/main/idlc/source/idlccompile.cxx
index 6761a6e..6cac169 100644
--- a/main/idlc/source/idlccompile.cxx
+++ b/main/idlc/source/idlccompile.cxx
@@ -145,7 +145,7 @@
 
 #if defined(SAL_W32) || defined(SAL_UNX) || defined(SAL_OS2)
 
-    OSL_ASSERT( sizeof(tmpFilePattern) > ( strlen(tmpPath)
+    OSL_ASSERT( sizeof(tmpFilePattern) > ( tmpPath.getLength()
                                            + RTL_CONSTASCII_LENGTH(
                                                 PATH_SEPARATOR )
                                            + prefix.getLength()
@@ -153,7 +153,7 @@
                                                 "XXXXXX") ) );
 
     tmpFilePattern[ sizeof(tmpFilePattern)-1 ] = '\0';
-    strncpy(tmpFilePattern, tmpPath, sizeof(tmpFilePattern)-1);
+    strncpy(tmpFilePattern, tmpPath.getStr(), sizeof(tmpFilePattern)-1);
     strncat(tmpFilePattern, PATH_SEPARATOR, sizeof(tmpFilePattern)-1-strlen(tmpFilePattern));
     strncat(tmpFilePattern, prefix.getStr(), sizeof(tmpFilePattern)-1-strlen(tmpFilePattern));
     strncat(tmpFilePattern, "XXXXXX", sizeof(tmpFilePattern)-1-strlen(tmpFilePattern));
@@ -377,7 +377,7 @@
 
 	if ( pOptions->isValid("-E") )
 	{
-		if (unlink(preprocFile) != 0)
+		if( unlink( preprocFile.getStr()) != 0)
 		{
 			fprintf(stderr, "%s: Could not remove parser input file %s\n",
 				   	pOptions->getProgramName().getStr(), preprocFile.getStr());
diff --git a/main/instsetoo_native/util/openoffice.lst b/main/instsetoo_native/util/openoffice.lst
index 3b0bb5d..0d82994 100644
--- a/main/instsetoo_native/util/openoffice.lst
+++ b/main/instsetoo_native/util/openoffice.lst
@@ -239,48 +239,6 @@
     }
 }
 
-URE
-{
-    Settings
-    {
-        downloadname URE_{productversion}_{os}_install_{languages}
-        variables
-        {
-            FULLPRODUCTNAME URE
-            PRODUCTNAME URE
-            PRODUCTVERSION 4.1.0
-            PACKAGEVERSION 4.1
-            PACKAGEREVISION 1
-            PRODUCTEXTENSION
-            LONG_PRODUCTEXTENSION
-            SHORT_PRODUCTEXTENSION
-            LICENSENAME ALv2
-            SETSTATICPATH 1
-            NOVERSIONINDIRNAME 1
-            PCPFILENAME ure.pcp
-            POOLPRODUCT 0
-            GLOBALFILEGID gid_File_Dl_Cppu
-            DOWNLOADBANNER urebanner.bmp
-            DOWNLOADBITMAP urebitmap.bmp
-            DOWNLOADSETUPICO ooosetup.ico
-            DONTUSESTARTMENUFOLDER 1
-            RELATIVE_PATHES_IN_DDF 1
-            NOLANGUAGESELECTIONPRODUCT 1
-            AOODOWNLOADNAMEPREFIX Apache_OpenOffice-URE
-            STARTCENTER_ADDFEATURE_URL http://extensions.openoffice.org/
-            STARTCENTER_INFO_URL http://www.openoffice.org
-            STARTCENTER_TEMPLREP_URL http://templates.openoffice.org
-            STARTCENTER_LAYOUT_STYLE 0
-            ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,version.lst
-            PACKAGEMAP package_names_ext.txt
-            DICT_REPO_URL http://extensions.openoffice.org/dictionaries
-        }
-        active 1
-        compression 5
-        script ure
-        include {solarenvpath}/{os}/loader2,{solarpath}/bin.{minor}/ure,{solarpath}/bin.{minor}/osl,{solarpath}/bin.{minor},{solarpath}/lib.{minor},{solarpath}/xml.{minor},{solarenvpath}/{os}/MS
-    }
-}
 
 Apache_OpenOffice_SDK
 {
@@ -307,7 +265,6 @@
             NO_README_IN_ROOTDIR 1
             LICENSENAME ALv2
             IGNOREDIRECTORYLAYER 1
-            NOVERSIONINDIRNAME 0
             NOSPACEINDIRECTORYNAME 1
             NOLANGUAGESELECTIONPRODUCT 1
             CHANGETARGETDIR 1
@@ -362,7 +319,6 @@
             NO_README_IN_ROOTDIR 1
             LICENSENAME ALv2
             IGNOREDIRECTORYLAYER 1
-            NOVERSIONINDIRNAME 0
             NOSPACEINDIRECTORYNAME 1
             NOLANGUAGESELECTIONPRODUCT 1
             CHANGETARGETDIR 1
diff --git a/main/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx b/main/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx
index 431d792..4bfcd52 100644
--- a/main/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx
+++ b/main/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx
@@ -105,7 +105,7 @@
     rtl::OUString sFirst = getVersion();
 
     SunVersion version1(sFirst);
-    JFW_ENSURE(version1, OUSTR("[Java framework] sunjavaplugin"SAL_DLLEXTENSION
+    JFW_ENSURE(version1, OUSTR("[Java framework] sunjavaplugin" SAL_DLLEXTENSION
                                " does not know the version: ")
                + sFirst + OUSTR(" as valid for a SUN/Oracle JRE."));
     SunVersion version2(sSecond);
diff --git a/main/jvmfwk/plugins/sunmajor/pluginlib/util.cxx b/main/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
index 1f29b59..d59f1db 100644
--- a/main/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
+++ b/main/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
@@ -879,7 +879,7 @@
                            SameOrSubDirJREMap(sResolvedDir));
     if (entry2 != mapJREs.end())
     {
-        JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin"SAL_DLLEXTENSION ": ")
+        JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin" SAL_DLLEXTENSION ": ")
                    + OUSTR("JRE found again (detected before): ") + sResolvedDir 
                    + OUSTR(".\n"));
         return entry2->second;
@@ -930,7 +930,7 @@
             MapIt entry =  mapJREs.find(sFilePath);
             if (entry != mapJREs.end())
             {
-                JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin"SAL_DLLEXTENSION ": ")
+                JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin" SAL_DLLEXTENSION ": ")
                    + OUSTR("JRE found again (detected before): ") + sFilePath 
                    + OUSTR(".\n"));
 
@@ -1018,7 +1018,7 @@
         vecBadPaths.push_back(sFilePath);
     else
     {
-        JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin"SAL_DLLEXTENSION ": ")
+        JFW_TRACE2(OUSTR("[Java framework] sunjavaplugin" SAL_DLLEXTENSION ": ")
                    + OUSTR("Found JRE: ") + sResolvedDir 
                    + OUSTR(" \n at: ") + path + OUSTR(".\n"));
  
diff --git a/main/offapi/com/sun/star/accessibility/AccessibleEventId.idl b/main/offapi/com/sun/star/accessibility/AccessibleEventId.idl
index 809fe40..c8fb2a7 100644
--- a/main/offapi/com/sun/star/accessibility/AccessibleEventId.idl
+++ b/main/offapi/com/sun/star/accessibility/AccessibleEventId.idl
@@ -377,7 +377,6 @@
     */
     const short LISTBOX_ENTRY_COLLAPSED = 33;
 
-    //IAccessibility2 Implementation 2009-----
     const short ACTIVE_DESCENDANT_CHANGED_NOFOCUS = 34;
     const short SELECTION_CHANGED_ADD =35;
     const short SELECTION_CHANGED_REMOVE =36;
@@ -385,7 +384,6 @@
     const short PAGE_CHANGED =38;
     const short SECTION_CHANGED =39;
     const short COLUMN_CHANGED =40;
-    //-----IAccessibility2 Implementation 2009
 
 };
 
diff --git a/main/package/source/xstor/owriteablestream.cxx b/main/package/source/xstor/owriteablestream.cxx
index f546fb7..ba3b0e8 100644
--- a/main/package/source/xstor/owriteablestream.cxx
+++ b/main/package/source/xstor/owriteablestream.cxx
@@ -565,7 +565,7 @@
         ::rtl::OUString aTempURL = GetNewTempFileURL( GetServiceFactory() );
 
         try {
-            if ( aTempURL && xStream.is() )
+            if ( !aTempURL.isEmpty() && xStream.is() )
             {
                 uno::Reference < ucb::XSimpleFileAccess > xTempAccess( 
                                 GetServiceFactory()->createInstance ( 
diff --git a/main/pyuno/source/module/pyuno_impl.hxx b/main/pyuno/source/module/pyuno_impl.hxx
index b0a4624..5342927 100644
--- a/main/pyuno/source/module/pyuno_impl.hxx
+++ b/main/pyuno/source/module/pyuno_impl.hxx
@@ -56,6 +56,9 @@
     #define PYSTR_CHECK                 PyBytes_Check
 #endif
 
+#include <rtl/string.hxx>
+inline void PyErr_SetString( PyObject* pyObj, const rtl::OString& rName) { PyErr_SetString( pyObj, rName.getStr());}
+
 namespace pyuno
 {
 
diff --git a/main/rat-excludes b/main/rat-excludes
index 4607cb3..7224c30 100644
--- a/main/rat-excludes
+++ b/main/rat-excludes
@@ -1353,6 +1353,7 @@
 main/unixODBC/inc/sqltypes.h
 main/unixODBC/inc/sqlucode.h
 
+main/winaccessibility/source/UAccCOMIDL/ia2_api_all.idl
 
 ##############################################################################
 #
diff --git a/main/rdbmaker/source/codemaker/global.cxx b/main/rdbmaker/source/codemaker/global.cxx
index 61103be..330b4c6 100644
--- a/main/rdbmaker/source/codemaker/global.cxx
+++ b/main/rdbmaker/source/codemaker/global.cxx
@@ -130,7 +130,7 @@
 	if ( name.getLength() > 0 )
 	{
         m_name = name;
-		m_pFile = fopen(m_name, checkAccessMode(mode));
+		m_pFile = fopen( m_name.getStr(), checkAccessMode(mode));
     }
 }
 
diff --git a/main/registry/source/regimpl.cxx b/main/registry/source/regimpl.cxx
index 704350d..8bbe14d 100644
--- a/main/registry/source/regimpl.cxx
+++ b/main/registry/source/regimpl.cxx
@@ -561,7 +561,7 @@
 				systemName = regName;
 
 			OString name( OUStringToOString(systemName, osl_getThreadTextEncoding()) );
-            if (unlink(name) != 0)
+            if( unlink( name.getStr()) != 0)
             {
                 return REG_DESTROY_REGISTRY_FAILED;
             }
@@ -819,7 +819,7 @@
         if (sFullKeyName.getLength() > 1)
             sFullKeyName += keyName;
         else
-            sFullKeyName += (keyName+1);
+            sFullKeyName += keyName.getStr() + 1;
 
         sFullPath = sFullKeyName.copy(0, keyName.lastIndexOf('/') + 1);
     } else
diff --git a/main/registry/tools/checksingleton.cxx b/main/registry/tools/checksingleton.cxx
index 6eed07d..1b6536c 100644
--- a/main/registry/tools/checksingleton.cxx
+++ b/main/registry/tools/checksingleton.cxx
@@ -116,7 +116,7 @@
                 {
                     return badOption("invalid", option.c_str());
                 }
-                m_typeRegName = OString((*first).c_str(), (*first).size());
+                m_typeRegName = *first;
                 break;
             }
         case 'o':
diff --git a/main/reportdesign/source/core/resource/core_resource.cxx b/main/reportdesign/source/core/resource/core_resource.cxx
index 1ac63c5..4a99fc1 100644
--- a/main/reportdesign/source/core/resource/core_resource.cxx
+++ b/main/reportdesign/source/core/resource/core_resource.cxx
@@ -64,7 +64,7 @@
             ::com::sun::star::lang::Locale aLocale = Application::GetSettings().GetUILocale();
 
             rtl::OString sResLibName = rtl::OString( "rpt" );
-            m_pImpl = SimpleResMgr::Create(sResLibName, aLocale);
+            m_pImpl = SimpleResMgr::Create( sResLibName.getStr(), aLocale);
         }
 	}
 
diff --git a/main/reportdesign/source/core/sdr/ModuleHelper.cxx b/main/reportdesign/source/core/sdr/ModuleHelper.cxx
index 94e6cf7..c213183 100644
--- a/main/reportdesign/source/core/sdr/ModuleHelper.cxx
+++ b/main/reportdesign/source/core/sdr/ModuleHelper.cxx
@@ -88,7 +88,7 @@
 	{
 		// create a manager with a fixed prefix
         rtl::OString sName = rtl::OString( "rptui" );
-		m_pRessources = ResMgr::CreateResMgr(sName);
+		m_pRessources = ResMgr::CreateResMgr( sName.getStr());
 	}
 	return m_pRessources;
 }
diff --git a/main/reportdesign/source/ui/inspection/DefaultInspection.cxx b/main/reportdesign/source/ui/inspection/DefaultInspection.cxx
index 05ee5f1..63a4871 100644
--- a/main/reportdesign/source/ui/inspection/DefaultInspection.cxx
+++ b/main/reportdesign/source/ui/inspection/DefaultInspection.cxx
@@ -47,7 +47,7 @@
     ::rtl::OUString HelpIdUrl::getHelpURL( const rtl::OString& sHelpId )
     {
         ::rtl::OUStringBuffer aBuffer;
-        ::rtl::OUString aTmp( sHelpId, sHelpId.getLength(), RTL_TEXTENCODING_UTF8 );
+        const ::rtl::OUString aTmp( ::rtl::OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8 ));
         DBG_ASSERT( INetURLObject( aTmp ).GetProtocol() == INET_PROT_NOT_VALID, "Wrong HelpId!" );
         aBuffer.appendAscii( INET_HID_SCHEME );
         aBuffer.append( aTmp.getStr() );
diff --git a/main/rsc/inc/rscerror.h b/main/rsc/inc/rscerror.h
index d4d360f..6b8b438 100644
--- a/main/rsc/inc/rscerror.h
+++ b/main/rsc/inc/rscerror.h
@@ -27,6 +27,8 @@
 #include <tools/solar.h>
 #endif
 
+#include <rtl/string.hxx>
+
 /****************** D E F I N I T I O N S ********************************/
 /******************* R e t u r n   E r r o r s		   *******************/
 #define ERR_OK				0xFFFFFFFF
@@ -153,6 +155,8 @@
 	// das Programm wird mit exit() verlassen
 	virtual void	FatalError( const ERRTYPE& rError, const RscId &aId,
 								const char * pMessage = NULL );
+	void Error( const ERRTYPE& rError, RscTop* pClass, const RscId& rId, const rtl::OString& rStr ) { this->Error( rError, pClass, rId, rStr.getStr()); }
+	void FatalError( const ERRTYPE& rError, const RscId& rId, const rtl::OString& rStr ) { this->FatalError( rError,rId, rStr.getStr()); }
 };
 
 #endif // _RSCERROR_H
diff --git a/main/rsc/source/parser/rscdb.cxx b/main/rsc/source/parser/rscdb.cxx
index ec33616..33d1e8f 100644
--- a/main/rsc/source/parser/rscdb.cxx
+++ b/main/rsc/source/parser/rscdb.cxx
@@ -112,7 +112,7 @@
     sal_uInt32 nRet = GetLangId( aL );
     if( nRet == 0 )
     {
-        pTypCont->AddLanguage( aL );
+        pTypCont->AddLanguage( aL.getStr() );
         nRet = GetLangId( aL );
     }
     if( rVariant.getLength() )
diff --git a/main/sal/inc/osl/profile.hxx b/main/sal/inc/osl/profile.hxx
index aa65749..5c3130e 100644
--- a/main/sal/inc/osl/profile.hxx
+++ b/main/sal/inc/osl/profile.hxx
@@ -75,17 +75,17 @@
 		{
 			sal_Char aBuf[1024];
 			return osl_readProfileString( profile,
-										  rSection,
-										  rEntry,
+										  rSection.getStr(),
+										  rEntry.getStr(),
 										  aBuf,
 										  sizeof( aBuf ),
-										  rDefault ) ? rtl::OString( aBuf ) : rtl::OString();
+										  rDefault.getStr() ) ? rtl::OString( aBuf ) : rtl::OString();
 
 		}
 
 		sal_Bool readBool( const rtl::OString& rSection, const rtl::OString& rEntry, sal_Bool bDefault )
 		{
-			return osl_readProfileBool( profile, rSection, rEntry, bDefault );
+			return osl_readProfileBool( profile, rSection.getStr(), rEntry.getStr(), bDefault );
 		}
 
 		sal_uInt32 readIdent(const rtl::OString& rSection, const rtl::OString& rEntry, 
@@ -98,11 +98,11 @@
 			nItems = 0;
 			while( it != rStrings.end() )
 			{
-				pStrings[ nItems++ ] = *it;
+				pStrings[ nItems++ ] = (*it).getStr();
 				++it;
 			}
 			pStrings[ nItems ] = NULL;
-			sal_uInt32 nRet = osl_readProfileIdent(profile, rSection, rEntry, nFirstId, pStrings, nDefault);
+			sal_uInt32 nRet = osl_readProfileIdent( profile, rSection.getStr(), rEntry.getStr(), nFirstId, pStrings, nDefault);
 			delete pStrings;
 			return nRet;
 		}
@@ -110,12 +110,12 @@
 		sal_Bool writeString(const rtl::OString& rSection, const rtl::OString& rEntry, 
 							 const rtl::OString& rString)
 		{
-			return osl_writeProfileString(profile, rSection, rEntry, rString);
+			return osl_writeProfileString( profile, rSection.getStr(), rEntry.getStr(), rString.getStr());
 		}
 
 		sal_Bool writeBool(const rtl::OString& rSection, const rtl::OString& rEntry, sal_Bool Value)
 		{
-			return osl_writeProfileBool(profile, rSection, rEntry, Value);
+			return osl_writeProfileBool( profile, rSection.getStr(), rEntry.getStr(), Value);
 		}
 
 		sal_Bool writeIdent(const rtl::OString& rSection, const rtl::OString& rEntry, 
@@ -128,12 +128,12 @@
 			nItems = 0;
 			while( it != rStrings.end() )
 			{
-				pStrings[ nItems++ ] = *it;
+				pStrings[ nItems++ ] = (*it).getStr();
 				++it;
 			}
 			pStrings[ nItems ] = NULL;
 			sal_Bool bRet =
-				osl_writeProfileIdent(profile, rSection, rEntry, nFirstId, pStrings, nValue );
+				osl_writeProfileIdent( profile, rSection.getStr(), rEntry.getStr(), nFirstId, pStrings, nValue );
 			delete pStrings;
 			return bRet;
 		}
@@ -144,7 +144,7 @@
 		*/
 		sal_Bool removeEntry(const rtl::OString& rSection, const rtl::OString& rEntry)
 		{
-			return osl_removeProfileEntry(profile, rSection, rEntry);
+			return osl_removeProfileEntry( profile, rSection.getStr(), rEntry.getStr());
 		}
 
 		/** Get all entries belonging to the specified section.
@@ -156,11 +156,11 @@
 			std::list< rtl::OString > aEntries;
 
 			// count buffer size necessary
-			int n = osl_getProfileSectionEntries( profile, rSection, NULL, 0 );
+			int n = osl_getProfileSectionEntries( profile, rSection.getStr(), NULL, 0 );
 			if( n > 1 )
 			{
 				sal_Char* pBuf = new sal_Char[ n+1 ];
-				osl_getProfileSectionEntries( profile, rSection, pBuf, n+1 );
+				osl_getProfileSectionEntries( profile, rSection.getStr(), pBuf, n+1 );
 				int nLen;
 				for( n = 0; ( nLen = strlen( pBuf+n ) ); n += nLen+1 )
 					aEntries.push_back( rtl::OString( pBuf+n ) );
diff --git a/main/sal/inc/rtl/locale.hxx b/main/sal/inc/rtl/locale.hxx
index fdcf1b0..902ca82 100644
--- a/main/sal/inc/rtl/locale.hxx
+++ b/main/sal/inc/rtl/locale.hxx
@@ -181,7 +181,7 @@
 	static OLocale registerLocale( const OUString & language, const OUString & country,
 							const OUString & variant )
 	{
-		return rtl_locale_register( language, country, variant );
+		return rtl_locale_register( language.getStr(), country.getStr(), variant.getStr() );
 	}
 
 	/**
@@ -191,7 +191,7 @@
 	 */
 	static OLocale registerLocale( const OUString & language, const OUString & country )
 	{
-		return rtl_locale_register( language, country, NULL );
+		return rtl_locale_register( language.getStr(), country.getStr(), NULL );
 	}
 
 	/** @deprecated
@@ -202,7 +202,7 @@
 	 */
 	static void setDefault( const OUString & language, const OUString & country,
 							const OUString & variant )
-			 { rtl_locale_setDefault(language, country, variant); }
+			 { rtl_locale_setDefault( language.getStr(), country.getStr(), variant.getStr()); }
 
 	/**
 	 	Getter for programmatic name of field,
diff --git a/main/sal/inc/rtl/string.hxx b/main/sal/inc/rtl/string.hxx
index f41376f..b873349 100644
--- a/main/sal/inc/rtl/string.hxx
+++ b/main/sal/inc/rtl/string.hxx
@@ -219,9 +219,13 @@
     */
     sal_Int32 getLength() const SAL_THROW(()) { return pData->length; }
 
+private:
     /**
       Returns a pointer to the characters of this string.
 
+      NOTE: the implicit cast to a char pointer is obsolete
+            because it is too dangerous #i123068#
+
       <p>The returned pointer is not guaranteed to point to a null-terminated
       byte string.  Note that this string object may contain embedded null
       characters, which will thus also be embedded in the returned byte
@@ -231,6 +235,13 @@
       representing the characters of this string object.
     */
     operator const sal_Char *() const SAL_THROW(()) { return pData->buffer; }
+public:
+    /** Returns a reference to a character of this string. */
+    sal_Char& operator[]( int n ) { return pData->buffer[n]; }
+    /** Returns a const reference to a character of this string. */
+    const sal_Char& operator[]( int n ) const { return pData->buffer[n]; }
+    /** Returns a bool indicating whether this string is empty. */
+    bool isEmpty() const { return (pData->length == 0); }
 
     /**
       Returns a pointer to the characters of this string.
@@ -954,6 +965,12 @@
 
 } /* Namespace */
 
+/* Helper methods to support OString messages in OSL_ENSURE, DBG_ERROR, DBG_WARN, DBG_TRACE, etc. */
+inline sal_Bool SAL_CALL osl_assertFailedLine( const sal_Char* pszFileName, sal_Int32 nLine, const ::rtl::OString& rMessage)
+	{ return osl_assertFailedLine( pszFileName, nLine, rMessage.getStr()); }
+inline void DbgOut( const rtl::OString& rMessage, sal_uInt16 nOutType, const sal_Char* pFileName, sal_uInt16 nLineNum )
+	{ DbgOut( rMessage.getStr(), nOutType, pFileName, nLineNum); }
+
 #endif /* __cplusplus */
 
 #endif /* _RTL_STRING_HXX_ */
diff --git a/main/sal/inc/rtl/ustring.hxx b/main/sal/inc/rtl/ustring.hxx
index d644dfa..eea1c0c 100644
--- a/main/sal/inc/rtl/ustring.hxx
+++ b/main/sal/inc/rtl/ustring.hxx
@@ -274,14 +274,26 @@
     */
     sal_Int32 getLength() const SAL_THROW(()) { return pData->length; }
 
+private:
     /**
       Returns a pointer to the Unicode character buffer from this string.
 
+      NOTE: the implicit cast to a UTF-16 pointer is obsolete
+            because it is too dangerous #i123068#
+
       It isn't necessarily NULL terminated.
 
       @return   a pointer to the Unicode characters buffer from this object.
     */
     operator const sal_Unicode *() const SAL_THROW(()) { return pData->buffer; }
+public:
+    /** Returns a reference to a UTF-16 element of this string. */
+    sal_Unicode& operator[]( int n ) { return pData->buffer[n]; }
+    /** Returns a const reference to a UTF-16 element of this string. */
+    const sal_Unicode& operator[]( int n ) const { return pData->buffer[n]; }
+    /** Returns a bool indicating whether this string is empty. */
+    bool isEmpty() const { return (pData->length == 0); }
+
 
     /**
       Returns a pointer to the Unicode character buffer from this string.
diff --git a/main/sal/osl/w32/signal.cxx b/main/sal/osl/w32/signal.cxx
index ff94c96..8b3af09 100644
--- a/main/sal/osl/w32/signal.cxx
+++ b/main/sal/osl/w32/signal.cxx
@@ -36,6 +36,8 @@
 #endif
 #include <ErrorRep.h>
 #include <systools/win32/uwinapi.h>
+#include <eh.h>
+#include <stdexcept>
 
 typedef struct _oslSignalHandlerImpl
 {
@@ -423,10 +425,53 @@
 /*****************************************************************************/
 /* osl_setErrorReporting */
 /*****************************************************************************/
+
+void win_seh_translator( unsigned nSEHCode, _EXCEPTION_POINTERS* pExcPtrs)
+{
+	(void*)pExcPtrs; // currently unused, but useful inside a debugger
+	const char* pSEHName = NULL;
+	switch( nSEHCode)
+	{
+		case EXCEPTION_ACCESS_VIOLATION:         pSEHName = "SEH Exception: ACCESS VIOLATION"; break;
+		case EXCEPTION_DATATYPE_MISALIGNMENT:    pSEHName = "SEH Exception: DATATYPE MISALIGNMENT"; break;
+		case EXCEPTION_BREAKPOINT:               /*pSEHName = "SEH Exception: BREAKPOINT";*/ break;
+		case EXCEPTION_SINGLE_STEP:              /*pSEHName = "SEH Exception: SINGLE STEP";*/ break;
+		case EXCEPTION_ARRAY_BOUNDS_EXCEEDED:    pSEHName = "SEH Exception: ARRAY BOUNDS EXCEEDED"; break;
+		case EXCEPTION_FLT_DENORMAL_OPERAND:     pSEHName = "SEH Exception: DENORMAL FLOAT OPERAND"; break;
+		case EXCEPTION_FLT_DIVIDE_BY_ZERO:       pSEHName = "SEH Exception: FLOAT DIVIDE_BY_ZERO"; break;
+		case EXCEPTION_FLT_INEXACT_RESULT:       pSEHName = "SEH Exception: FLOAT INEXACT RESULT"; break;
+		case EXCEPTION_FLT_INVALID_OPERATION:    pSEHName = "SEH Exception: INVALID FLOAT OPERATION"; break;
+		case EXCEPTION_FLT_OVERFLOW:             pSEHName = "SEH Exception: FLOAT OVERFLOW"; break;
+		case EXCEPTION_FLT_STACK_CHECK:          pSEHName = "SEH Exception: FLOAT STACK_CHECK"; break;
+		case EXCEPTION_FLT_UNDERFLOW:            pSEHName = "SEH Exception: FLOAT UNDERFLOW"; break;
+		case EXCEPTION_INT_DIVIDE_BY_ZERO:       pSEHName = "SEH Exception: INTEGER DIVIDE_BY_ZERO"; break;
+		case EXCEPTION_INT_OVERFLOW:             pSEHName = "SEH Exception: INTEGER OVERFLOW"; break;
+		case EXCEPTION_PRIV_INSTRUCTION:         pSEHName = "SEH Exception: PRIVILEDGED INSTRUCTION"; break;
+		case EXCEPTION_IN_PAGE_ERROR:            pSEHName = "SEH Exception: IN_PAGE_ERROR"; break;
+		case EXCEPTION_ILLEGAL_INSTRUCTION:      pSEHName = "SEH Exception: ILLEGAL INSTRUCTION"; break;
+		case EXCEPTION_NONCONTINUABLE_EXCEPTION: pSEHName = "SEH Exception: NONCONTINUABLE EXCEPTION"; break;
+		case EXCEPTION_STACK_OVERFLOW:           pSEHName = "SEH Exception: STACK OVERFLOW"; break;
+		case EXCEPTION_INVALID_DISPOSITION:      pSEHName = "SEH Exception: INVALID DISPOSITION"; break;
+		case EXCEPTION_GUARD_PAGE:               pSEHName = "SEH Exception: GUARD PAGE"; break;
+		case EXCEPTION_INVALID_HANDLE:           pSEHName = "SEH Exception: INVALID HANDLE"; break;
+//		case EXCEPTION_POSSIBLE_DEADLOCK:        pSEHName = "SEH Exception: POSSIBLE DEADLOCK"; break;
+		default:                                 pSEHName = "Unknown SEH Exception"; break;
+	}
+
+	if( pSEHName)
+		throw std::runtime_error( pSEHName);
+}
+
 sal_Bool SAL_CALL osl_setErrorReporting( sal_Bool bEnable )
 {
 	sal_Bool bOld = bErrorReportingEnabled;
 	bErrorReportingEnabled = bEnable;
 
+	if( !bEnable) // if the crash reporter is disabled
+	{
+		// fall back to handle Window's SEH events as C++ exceptions
+		_set_se_translator( win_seh_translator);
+	}
+
 	return bOld;
 }
diff --git a/main/sal/rtl/source/alloc_arena.c b/main/sal/rtl/source/alloc_arena.c
index d12653b..4fbbf97 100644
--- a/main/sal/rtl/source/alloc_arena.c
+++ b/main/sal/rtl/source/alloc_arena.c
@@ -1212,16 +1212,9 @@
 #elif defined(SAL_W32)
 	addr = VirtualAlloc (NULL, (SIZE_T)(size), MEM_COMMIT, PAGE_READWRITE);
 #elif defined(SAL_OS2)
-	{
-	APIRET rc;
-	addr = 0;
-	// Use DosAlloc* to get a 4KB page aligned address.
-	rc = DosAllocMem( &addr, size, PAG_COMMIT | PAG_READ | PAG_WRITE | OBJ_ANY);
-	if (rc) {
-		fprintf( stderr, "sal3::DosAllocMem failed rc=%d\n", rc);
-		addr = 0;
-	}
-	}
+	/* Use valloc() to use libc 16MB chunks when allocating high memory, to reduce
+	   virtual address fragmentation. */
+	addr = valloc( size);
 #endif /* (SAL_UNX || SAL_W32 || SAL_OS2) */
 
 	if (addr != MAP_FAILED)
@@ -1256,7 +1249,7 @@
 #elif defined(SAL_W32)
 	(void) VirtualFree ((LPVOID)(pAddr), (SIZE_T)(0), MEM_RELEASE);
 #elif defined(SAL_OS2)
-	(void) DosFreeMem( pAddr);
+	free(pAddr);
 #endif /* (SAL_UNX || SAL_W32) */
 }
 
diff --git a/main/sax/source/tools/fastserializer.cxx b/main/sax/source/tools/fastserializer.cxx
index 714b945..1071893 100644
--- a/main/sax/source/tools/fastserializer.cxx
+++ b/main/sax/source/tools/fastserializer.cxx
@@ -78,7 +78,7 @@
 	OUString FastSaxSerializer::escapeXml( const OUString& s )
 	{
 		::rtl::OUStringBuffer sBuf( s.getLength() );
-		const sal_Unicode* pStr = s;
+		const sal_Unicode* pStr = s.getStr();
 		sal_Int32 nLen = s.getLength();
 		for( sal_Int32 i = 0; i < nLen; ++i)
 		{
diff --git a/main/sc/inc/chgtrack.hxx b/main/sc/inc/chgtrack.hxx
index 0b48f14..5919b45 100644
--- a/main/sc/inc/chgtrack.hxx
+++ b/main/sc/inc/chgtrack.hxx
@@ -44,7 +44,6 @@
 #endif
 
 #define DEBUG_CHANGETRACK 0
-//IAccessibility2 Implementation 2009-----
 class ScChangeAction;
 class ScAppOptions;
 class ScActionColorChanger
@@ -62,7 +61,6 @@
 				void		Update( const ScChangeAction& rAction );
 				ColorData	GetColor() const	{ return nColor; }
 };
-//-----IAccessibility2 Implementation 2009
 class ScBaseCell;
 class ScDocument;
 
diff --git a/main/sc/inc/detfunc.hxx b/main/sc/inc/detfunc.hxx
index 094cc79..91593f0 100644
--- a/main/sc/inc/detfunc.hxx
+++ b/main/sc/inc/detfunc.hxx
@@ -155,9 +155,7 @@
 	static ColorData GetCommentColor();
 	static void InitializeColors();
 	static sal_Bool	IsColorsInitialized();
-//IAccessibility2 Implementation 2009-----
 	static void AppendChangTrackNoteSeparator(String &str);
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/inc/document.hxx b/main/sc/inc/document.hxx
index 1b0bfeb..e701b47 100644
--- a/main/sc/inc/document.hxx
+++ b/main/sc/inc/document.hxx
@@ -440,7 +440,6 @@
 
     sal_Int16           mnNamedRangesLockCount;
 
-//IAccessibility2 Implementation 2009-----
 	String msDocAccTitle;
 public:
 	// SC_DLLPUBLIC sal_Bool RowHidden( SCROW nRow, SCTAB nTab );
@@ -456,7 +455,6 @@
 	virtual sal_Bool getDocReadOnly() const { return bReadOnly; }
 	sal_Bool IsCellInChangeTrack(const ScAddress &cell,Color *pColCellBoder);
 	void GetCellChangeTrackNote( const ScAddress &cell,String &strTrackText,sal_Bool &pbLeftEdge);
-//-----IAccessibility2 Implementation 2009
 	SC_DLLPUBLIC sal_uLong			GetCellCount() const;		// alle Zellen
     SCSIZE          GetCellCount(SCTAB nTab, SCCOL nCol) const;
 	sal_uLong			GetWeightedCount() const;	// Formeln und Edit staerker gewichtet
@@ -482,9 +480,7 @@
 	SC_DLLPUBLIC void			InitDrawLayer( SfxObjectShell* pDocShell = NULL );
 	XColorListSharedPtr GetColorTable();
 
-//IAccessibility2 Implementation 2009-----
 	ScTable*      GetTableByIndex(sal_Int32 nIndex);
-//-----IAccessibility2 Implementation 2009
 	SC_DLLPUBLIC sfx2::LinkManager*		GetLinkManager() const;
 
 	SC_DLLPUBLIC const ScDocOptions&		GetDocOptions() const;
diff --git a/main/sc/inc/drwlayer.hxx b/main/sc/inc/drwlayer.hxx
index ce36641..8d24594 100644
--- a/main/sc/inc/drwlayer.hxx
+++ b/main/sc/inc/drwlayer.hxx
@@ -230,10 +230,8 @@
 							const Point& rWinPoint, const Window& rCmpWnd );
 
     static ScMacroInfo* GetMacroInfo( SdrObject* pObj, sal_Bool bCreate = sal_False );
-//IAccessibility2 Implementation 2009-----
 	virtual ImageMap* GetImageMapForObject(SdrObject* pObj);
 	virtual sal_Int32 GetHyperlinkCount(SdrObject* pObj);
-//-----IAccessibility2 Implementation 2009
 
 private:
 	static SfxObjectShell* pGlobalDrawPersist;			// fuer AllocModel
diff --git a/main/sc/inc/sc.hrc b/main/sc/inc/sc.hrc
index a215f88..c269a33 100644
--- a/main/sc/inc/sc.hrc
+++ b/main/sc/inc/sc.hrc
@@ -998,13 +998,11 @@
 #define STR_ACC_DATAPILOT_DATA_DESCR (STR_START + 180)
 #define STR_ACC_DATAPILOT_SEL_DESCR (STR_START + 181)
 
-//IAccessibility2 Implementation 2009-----
 #define	STR_ACC_TOOLBAR_FORMULA		(STR_START + 182)
 #define STR_ACC_DOC_SPREADSHEET		(STR_START + 185)
 #define STR_ACC_DOC_PREVIEW_SUFFIX (STR_START + 186)
 #define STR_ACC_DOC_SPREADSHEET_READONLY		(STR_START + 187)
 
-//-----IAccessibility2 Implementation 2009
 
 // --------------------------------------------------
 
diff --git a/main/sc/inc/table.hxx b/main/sc/inc/table.hxx
index ab9a671..195332a 100644
--- a/main/sc/inc/table.hxx
+++ b/main/sc/inc/table.hxx
@@ -938,10 +938,8 @@
         SCROW mnUBound;
     };
 
-//IAccessibility2 Implementation 2009-----
 public :
 	ScColumn* GetColumnByIndex(sal_Int32 index);
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/core/data/documen2.cxx b/main/sc/source/core/data/documen2.cxx
index fc40697..4a004df 100644
--- a/main/sc/source/core/data/documen2.cxx
+++ b/main/sc/source/core/data/documen2.cxx
@@ -87,11 +87,9 @@
 #include "recursionhelper.hxx"
 #include "lookupcache.hxx"
 #include "externalrefmgr.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "appoptio.hxx"
 #include "scmod.hxx"
 #include "../../ui/inc/viewutil.hxx"
-//-----IAccessibility2 Implementation 2009
 #include "tabprotection.hxx"
 #include "formulaparserpool.hxx"
 #include "clipparam.hxx"
@@ -216,15 +214,13 @@
         eGrammar( formula::FormulaGrammar::GRAM_NATIVE ),
         bStyleSheetUsageInvalid( sal_True ),
         mbUndoEnabled( true ),
-//IAccessibility2 Implementation 2009-----
-		bReadOnly(sal_False),
-//-----IAccessibility2 Implementation 2009
         mbAdjustHeightEnabled( true ),
         mbExecuteLinkEnabled( true ),
         mbChangeReadOnlyEnabled( false ),
         mbStreamValidLocked( false ),
         mbIsTemporary(false), // #118840#
-        mnNamedRangesLockCount( 0 )
+        mnNamedRangesLockCount( 0 ),
+		bReadOnly(sal_False)
 {
     SetStorageGrammar( formula::FormulaGrammar::GRAM_STORAGE_DEFAULT);
 
@@ -1303,7 +1299,6 @@
     if( pLookupCacheMapImpl )
         pLookupCacheMapImpl->clear();
 }
-//IAccessibility2 Implementation 2009-----
 sal_Bool ScDocument::IsCellInChangeTrack(const ScAddress &cell,Color *pColCellBoder)
 {
 	ScChangeTrack* pTrack = GetChangeTrack();
@@ -1457,4 +1452,3 @@
 		}
 	}
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/core/data/document.cxx b/main/sc/source/core/data/document.cxx
index 0f4a6dd..f37962c 100644
--- a/main/sc/source/core/data/document.cxx
+++ b/main/sc/source/core/data/document.cxx
@@ -200,7 +200,6 @@
 	return sal_False;
 }
 
-//IAccessibility2 Implementation 2009-----
 ScTable* ScDocument::GetTableByIndex(sal_Int32 nIndex)
 {
   if ( nIndex <= MAXTAB && nIndex >= 0)
@@ -208,7 +207,6 @@
 
   return NULL;
 }
-//-----IAccessibility2 Implementation 2009
 
 sal_Bool ScDocument::ValidTabName( const String& rName ) const
 {
diff --git a/main/sc/source/core/data/drwlayer.cxx b/main/sc/source/core/data/drwlayer.cxx
index d1143d6..ecb6a22 100644
--- a/main/sc/source/core/data/drwlayer.cxx
+++ b/main/sc/source/core/data/drwlayer.cxx
@@ -2027,7 +2027,6 @@
     }
     return 0;
 }
-//IAccessibility2 Implementation 2009-----
 ImageMap* ScDrawLayer::GetImageMapForObject(SdrObject* pObj)
 {
 	ScIMapInfo* pIMapInfo = const_cast<ScIMapInfo*>( GetIMapInfo( pObj ) );
@@ -2047,7 +2046,6 @@
 		nHLCount = 0; // pMacroInfo->GetHlink().getLength() > 0 ? 1 : 0;
 	return nHLCount;
 }
-//-----IAccessibility2 Implementation 2009
 void ScDrawLayer::SetGlobalDrawPersist(SfxObjectShell* pPersist)			// static
 {
 	DBG_ASSERT(!pGlobalDrawPersist,"SetGlobalDrawPersist mehrfach");
diff --git a/main/sc/source/core/data/table2.cxx b/main/sc/source/core/data/table2.cxx
index a98042c..136011c 100644
--- a/main/sc/source/core/data/table2.cxx
+++ b/main/sc/source/core/data/table2.cxx
@@ -3308,7 +3308,6 @@
 	return n;
 }
 
-//IAccessibility2 Implementation 2009-----
 ScColumn* ScTable::GetColumnByIndex(sal_Int32 index)
 {
 	if( index <= MAXCOL && index >= 0 )
@@ -3317,5 +3316,4 @@
 	}
 	return NULL;
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/core/tool/detfunc.cxx b/main/sc/source/core/tool/detfunc.cxx
index 1ebaa45..ba70f18 100644
--- a/main/sc/source/core/tool/detfunc.cxx
+++ b/main/sc/source/core/tool/detfunc.cxx
@@ -1706,10 +1706,8 @@
 	return bColorsInitialized;
 }
 
-//IAccessibility2 Implementation 2009-----
 void ScDetectiveFunc::AppendChangTrackNoteSeparator(String &aDisplay)
 {
 	aDisplay.AppendAscii( RTL_CONSTASCII_STRINGPARAM("\n--------\n") );	
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/filter/excel/xecontent.cxx b/main/sc/source/filter/excel/xecontent.cxx
index 348c4ee..1aa0db7 100644
--- a/main/sc/source/filter/excel/xecontent.cxx
+++ b/main/sc/source/filter/excel/xecontent.cxx
@@ -526,7 +526,7 @@
     OUString sId = rStrm.addRelation( rStrm.GetCurrentStream()->getOutputStream(),
             XclXmlUtils::ToOUString( "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink" ),
             msTarget,
-            XclXmlUtils::ToOUString( "External" ) );
+            true );
     rStrm.GetCurrentStream()->singleElement( XML_hyperlink,
             XML_ref,                XclXmlUtils::ToOString( maScPos ).getStr(),
             FSNS( XML_r, XML_id ),  XclXmlUtils::ToOString( sId ).getStr(),
diff --git a/main/sc/source/filter/excel/xestream.cxx b/main/sc/source/filter/excel/xestream.cxx
index fa779ed..04afd82 100644
--- a/main/sc/source/filter/excel/xestream.cxx
+++ b/main/sc/source/filter/excel/xestream.cxx
@@ -961,7 +961,7 @@
                 // OOXTODO: XML_theme,      index into <clrScheme/>
                 // OOXTODO: XML_tint,       double
                 FSEND );
-    lcl_WriteValue( rStream, XML_sz,         OString::valueOf( (double) (rFontData.mnHeight / 20.0) ) );  // Twips->Pt
+    lcl_WriteValue( rStream, XML_sz,         OString::valueOf( (double) (rFontData.mnHeight / 20.0) ).getStr() );  // Twips->Points
     lcl_WriteValue( rStream, XML_u,          bHaveUnderline ? pUnderline : NULL );
     lcl_WriteValue( rStream, XML_vertAlign,  bHaveVertAlign ? pVertAlign : NULL );
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleCell.cxx b/main/sc/source/ui/Accessibility/AccessibleCell.cxx
index f5e6c59..2abe7d0 100644
--- a/main/sc/source/ui/Accessibility/AccessibleCell.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleCell.cxx
@@ -40,9 +40,7 @@
 #include "editsrc.hxx"
 #include "dociter.hxx"
 #include "cell.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "validat.hxx"
-//-----IAccessibility2 Implementation 2009
 #ifndef _UTL_ACCESSIBLESTATESETHELPER_HXX
 #include <unotools/accessiblestatesethelper.hxx>
 #endif
@@ -60,9 +58,7 @@
 #include <comphelper/sequence.hxx>
 #include <float.h>
 
-//IAccessibility2 Implementation 2009-----
 #include "AccessibleSpreadsheet.hxx"
-//-----IAccessibility2 Implementation 2009
 using namespace	::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 
@@ -245,7 +241,6 @@
 		pStateSet->AddState(AccessibleStateType::DEFUNC);
     else
     {
-//IAccessibility2 Implementation 2009-----
 		if (IsFormulaMode())
 		{
 			pStateSet->AddState(AccessibleStateType::ENABLED);
@@ -263,7 +258,6 @@
 				pStateSet->AddState(AccessibleStateType::VISIBLE);
 			return pStateSet;
 		}
-//-----IAccessibility2 Implementation 2009
 	    if (IsEditable(xParentStates))
 	    {
 		    pStateSet->AddState(AccessibleStateType::EDITABLE);
@@ -272,9 +266,7 @@
 	    pStateSet->AddState(AccessibleStateType::ENABLED);
 	    pStateSet->AddState(AccessibleStateType::MULTI_LINE);
 	    pStateSet->AddState(AccessibleStateType::MULTI_SELECTABLE);
-//IAccessibility2 Implementation 2009-----
 	    pStateSet->AddState(AccessibleStateType::FOCUSABLE);
-//-----IAccessibility2 Implementation 2009
 	    if (IsOpaque(xParentStates))
 		    pStateSet->AddState(AccessibleStateType::OPAQUE);
 	    pStateSet->AddState(AccessibleStateType::SELECTABLE);
@@ -371,7 +363,6 @@
 
 sal_Bool ScAccessibleCell::IsSelected()
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		const ScAccessibleSpreadsheet *pSheet =static_cast<const ScAccessibleSpreadsheet*>(mxParent.get());
@@ -381,7 +372,6 @@
 		}
 		return sal_False;
 	}
-//-----IAccessibility2 Implementation 2009
 	sal_Bool bResult(sal_False);
 	if (mpViewShell && mpViewShell->GetViewData())
 	{
@@ -401,12 +391,10 @@
 
 ::std::auto_ptr< SvxEditSource > ScAccessibleCell::CreateEditSource(ScTabViewShell* pViewShell, ScAddress aCell, ScSplitPos eSplitPos)
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return ::std::auto_ptr< SvxEditSource >();
 	}
-//-----IAccessibility2 Implementation 2009
 	::std::auto_ptr < ScAccessibleTextData > pAccessibleCellTextData
         ( new ScAccessibleCellTextData( pViewShell, aCell, eSplitPos, this ) );
 	::std::auto_ptr< SvxEditSource > pEditSource (new ScAccessibilityEditSource(pAccessibleCellTextData));
@@ -497,7 +485,6 @@
 		pRelationSet->AddRelation(aRelation);
 	}
 }
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString ReplaceOneChar(::rtl::OUString oldOUString, ::rtl::OUString replacedChar, ::rtl::OUString replaceStr)
 {
 	int iReplace = -1;
@@ -591,7 +578,6 @@
 	sal_uInt16 nPosX = maCellAddress.Col();
 	sal_uInt16 nPosY = sal_uInt16(maCellAddress.Row());
 	sal_uInt16 nTab = maCellAddress.Tab();
-	//IAccessibility2 Implementation 2009-----
 	sal_uInt32 nValidation = static_cast< const SfxUInt32Item* >( mpDoc->GetAttr( nPosX, nPosY, nTab, ATTR_VALIDDATA ) )->GetValue();
     if( nValidation )
     {
@@ -599,7 +585,6 @@
         if( pData && pData->HasSelectionList() )
             return sal_True;
     }
-	//-----IAccessibility2 Implementation 2009
 	ScMergeFlagAttr* pAttr;
 	pAttr = (ScMergeFlagAttr*)mpDoc->GetAttr( nPosX, nPosY, nTab, ATTR_MERGE_FLAG );
 	if( pAttr->HasAutoFilter() )
@@ -639,4 +624,3 @@
 	}
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/Accessibility/AccessibleCellBase.cxx b/main/sc/source/ui/Accessibility/AccessibleCellBase.cxx
index 25ec3b1..4291f41 100644
--- a/main/sc/source/ui/Accessibility/AccessibleCellBase.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleCellBase.cxx
@@ -38,10 +38,8 @@
 #include "sc.hrc"
 #endif
 #include "unonames.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "detfunc.hxx"
 #include "chgtrack.hxx"
-//-----IAccessibility2 Implementation 2009
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLEROLE_HPP_
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #endif
@@ -55,11 +53,9 @@
 #include <rtl/uuid.h>
 #include <comphelper/sequence.hxx>
 #include <sfx2/objsh.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/sheet/XSheetAnnotation.hpp>
 #include <com/sun/star/sheet/XSheetAnnotationAnchor.hpp>
 #include <com/sun/star/text/XSimpleText.hpp>
-//-----IAccessibility2 Implementation 2009
 
 #include <float.h>
 
@@ -234,8 +230,6 @@
     ScAccessibleCellBase::createAccessibleName(void)
     throw (uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
-	//String sName( ScResId(STR_ACC_CELL_NAME) );
 	String sAddress;
 	// Document not needed, because only the cell address, but not the tablename is needed
 	// always us OOO notation
@@ -244,10 +238,7 @@
     /*  #i65103# ZoomText merges cell address and contents, e.g. if value 2 is
         contained in cell A1, ZT reads "cell A twelve" instead of "cell A1 - 2".
         Simple solution: Append a space character to the cell address. */
-    //sName.Append( ' ' );
-    //return rtl::OUString(sName);
     return rtl::OUString(sAddress);
-//-----IAccessibility2 Implementation 2009
 }
 
 	//=====  XAccessibleValue  ================================================
@@ -260,14 +251,11 @@
     IsObjectValid();
 	uno::Any aAny;
 	if (mpDoc)
-//IAccessibility2 Implementation 2009-----
-		//aAny <<= mpDoc->GetValue(maCellAddress);
 	{
 		String valStr;
 		mpDoc->GetString(maCellAddress.Col(),maCellAddress.Row(),maCellAddress.Tab(), valStr);
 		aAny <<= rtl::OUString(valStr);
 	}
-//-----IAccessibility2 Implementation 2009
 	return aAny;
 }
 
@@ -356,7 +344,6 @@
 		bEditable = sal_True;
 	return bEditable;
 }
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString SAL_CALL ScAccessibleCellBase::GetNote(void)
 								throw (::com::sun::star::uno::RuntimeException)
 {
@@ -657,4 +644,3 @@
 	strNote += GetNote();
 	return strNote;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx b/main/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
index 2fac54e..8c74061 100644
--- a/main/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
@@ -31,12 +31,10 @@
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleAction.hpp>
 #include <comphelper/accessiblekeybindinghelper.hxx>
 #include <com/sun/star/awt/KeyModifier.hpp>
 #include <vcl/keycodes.hxx>
-//-----IAccessibility2 Implementation 2009
 #ifndef _UTL_ACCESSIBLESTATESETHELPER_HXX
 #include <unotools/accessiblestatesethelper.hxx>
 #endif
@@ -45,18 +43,14 @@
 #include <toolkit/helper/convert.hxx>
 #include <tools/debug.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
 #include <unotools/accessiblerelationsethelper.hxx>
-//-----IAccessibility2 Implementation 2009
 using namespace	::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 
 class ScAccessibleDataPilotButton
 	:	public ScAccessibleContextBase
-//IAccessibility2 Implementation 2009-----
 	, public ::com::sun::star::accessibility::XAccessibleAction
-//-----IAccessibility2 Implementation 2009
 {
 public:
 	//=====  internal  ========================================================
@@ -78,7 +72,6 @@
 protected:
 	virtual ~ScAccessibleDataPilotButton(void);
 public:
-//IAccessibility2 Implementation 2009-----
 	// XAccessibleAction
 	virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
 	virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
@@ -90,7 +83,6 @@
 		throw (::com::sun::star::uno::RuntimeException);
 	virtual void SAL_CALL acquire() throw ();
 	virtual void SAL_CALL release() throw ();
-//-----IAccessibility2 Implementation 2009
 	///=====  XAccessibleComponent  ============================================
 
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
@@ -132,10 +124,8 @@
             ::com::sun::star::accessibility::XAccessibleStateSet> SAL_CALL
     	getAccessibleStateSet(void)
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > 
 		SAL_CALL getAccessibleRelationSet(	) throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 	///=====  XServiceInfo  ====================================================
 
     /**	Returns an identifier for the implementation of this object.
@@ -327,10 +317,8 @@
     {
         DBG_ASSERT(mpFieldWindow->GetFieldCount() == maChildren.size(), "did not recognize a child count change");
 
-//IAccessibility2 Implementation 2009-----
 		if(maChildren.size()==0)
 			return ;
-//-----IAccessibility2 Implementation 2009
         sal_Int32 nIndex(mpFieldWindow->GetSelectedIndex());
         uno::Reference < XAccessible > xTempAcc = maChildren[nIndex].xWeakAcc;
         if (xTempAcc.is() && maChildren[nIndex].pAcc)
@@ -343,10 +331,8 @@
     if (mpFieldWindow)
     {
         DBG_ASSERT(mpFieldWindow->GetFieldCount() == maChildren.size(), "did not recognize a child count change");
-//IAccessibility2 Implementation 2009-----
 		if(maChildren.size()==0)
 			return ;
-//-----IAccessibility2 Implementation 2009
         sal_Int32 nIndex(mpFieldWindow->GetSelectedIndex());
         uno::Reference < XAccessible > xTempAcc = maChildren[nIndex].xWeakAcc;
         if (xTempAcc.is() && maChildren[nIndex].pAcc)
@@ -556,11 +542,8 @@
         ::com::sun::star::accessibility::XAccessible>& rxParent,
         ScPivotFieldWindow* pFieldWindow,
         sal_Int32 nIndex)
-//IAccessibility2 Implementation 2009-----
 //change role frome PUSH_BUTTON to BUTTON_MENU
-    //: ScAccessibleContextBase(rxParent, AccessibleRole::PUSH_BUTTON),
     : ScAccessibleContextBase(rxParent, AccessibleRole::BUTTON_MENU),
-//-----IAccessibility2 Implementation 2009
     mpFieldWindow(pFieldWindow),
     mnIndex(nIndex)
 {
@@ -699,7 +682,6 @@
 
     return pStateSet;
 }
-//IAccessibility2 Implementation 2009-----
 ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > 
 	SAL_CALL ScAccessibleDataPilotButton::getAccessibleRelationSet(	) throw (::com::sun::star::uno::RuntimeException)
 {
@@ -715,7 +697,6 @@
 	return xSet;
 
 }
-//-----IAccessibility2 Implementation 2009
 	///=====  XServiceInfo  ====================================================
 
 ::rtl::OUString SAL_CALL ScAccessibleDataPilotButton::getImplementationName(void)
@@ -743,10 +724,8 @@
 ::rtl::OUString SAL_CALL ScAccessibleDataPilotButton::createAccessibleDescription(void)
         throw (::com::sun::star::uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	 if (mpFieldWindow)
         return mpFieldWindow->GetHelpText();
-//-----IAccessibility2 Implementation 2009
     return rtl::OUString();
 }
 
@@ -783,7 +762,6 @@
     else
         return Rectangle();
 }
-//IAccessibility2 Implementation 2009-----
 // -----------------------------------------------------------------------------
 // XAccessibleAction
 // -----------------------------------------------------------------------------
@@ -845,5 +823,4 @@
 {
 	ScAccessibleContextBase::release();
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleDocument.cxx b/main/sc/source/ui/Accessibility/AccessibleDocument.cxx
index b0a11ba..d969da3 100644
--- a/main/sc/source/ui/Accessibility/AccessibleDocument.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleDocument.cxx
@@ -70,7 +70,6 @@
 #include <unotools/accessiblerelationsethelper.hxx>
 #include <toolkit/helper/convert.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <svx/AccessibleControlShape.hxx>
 #include <svx/AccessibleShape.hxx>
 #include <svx/ShapeTypeHandler.hxx>
@@ -78,15 +77,12 @@
 #include <sfx2/objsh.hxx>
 #include <editeng/editview.hxx>
 #include <editeng/editeng.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <list>
 #include <algorithm>
-//IAccessibility2 Implementation 2009-----
 #include "AccessibleCell.hxx"
 
 #include "svx/unoapi.hxx"
 #include "scmod.hxx"
-//-----IAccessibility2 Implementation 2009
 using namespace	::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 using ::std::for_each;
@@ -259,7 +255,6 @@
 		const ::accessibility::AccessibleShapeTreeInfo& _rShapeTreeInfo
 	)	throw (::com::sun::star::uno::RuntimeException);
 
-//IAccessibility2 Implementation 2009-----
 	virtual ::accessibility::AccessibleControlShape* GetAccControlShapeFromModel
 		(::com::sun::star::beans::XPropertySet* pSet) 
 		throw (::com::sun::star::uno::RuntimeException);
@@ -268,7 +263,6 @@
         GetAccessibleCaption (const ::com::sun::star::uno::Reference<
             ::com::sun::star::drawing::XShape>& xShape)
 			throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
     ///=====  Internal  ========================================================
     void SetDrawBroadcaster();
 
@@ -489,7 +483,6 @@
     return bResult;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::accessibility::AccessibleControlShape * ScChildrenShapes::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException)
 {
 	sal_Int32 count = GetCount();
@@ -527,7 +520,6 @@
 	}
 	return NULL;
 }
-//-----IAccessibility2 Implementation 2009
 sal_Int32 ScChildrenShapes::GetCount() const
 {
 	SdrPage* pDrawPage = GetDrawPage();
@@ -806,9 +798,7 @@
         std::vector < uno::Reference < drawing::XShape > > aShapes;
         FillShapes(aShapes);
 
-//IAccessibility2 Implementation 2009-----
 		if(aShapes.size()<=0) return xAccessible;
-//-----IAccessibility2 Implementation 2009
         SortedShapes::iterator aItr;
         if (FindShape(aShapes[nSelectedChildIndex], aItr))
             xAccessible = Get(aItr - maZOrderedShapes.begin());
@@ -953,20 +943,16 @@
     }
     else
         mnShapesSelected = 0;
-//IAccessibility2 Implementation 2009-----
 	SdrObject *pFocusedObj = NULL;
 	if( mnShapesSelected == 1 && aShapesList.size() == 1)
 	{
 		pFocusedObj = GetSdrObjectFromXShape(aShapesList[0]->xShape);
 	}
-//-----IAccessibility2 Implementation 2009
     ScShapeDataLess aLess;
     std::sort(aShapesList.begin(), aShapesList.end(), aLess);
-//IAccessibility2 Implementation 2009-----
 	SortedShapes vecSelectedShapeAdd;
 	SortedShapes vecSelectedShapeRemove;
 	sal_Bool bHasSelect=sal_False;
-//-----IAccessibility2 Implementation 2009
     SortedShapes::iterator aXShapesItr(aShapesList.begin());
     SortedShapes::const_iterator aXShapesEndItr(aShapesList.end());
     SortedShapes::iterator aDataItr(maZOrderedShapes.begin());
@@ -991,18 +977,14 @@
                         (*aDataItr)->pAccShape->SetState(AccessibleStateType::SELECTED);
                         (*aDataItr)->pAccShape->ResetState(AccessibleStateType::FOCUSED);
                         bResult = sal_True;
-//IAccessibility2 Implementation 2009-----
 						vecSelectedShapeAdd.push_back((*aDataItr));
-//-----IAccessibility2 Implementation 2009
                     }
                     aFocusedItr = aDataItr;
                 }
-//IAccessibility2 Implementation 2009-----
 				else
 				{
 					 bHasSelect = sal_True;
 				}
-//-----IAccessibility2 Implementation 2009
                 ++aDataItr;
                 ++aXShapesItr;
             }
@@ -1016,9 +998,7 @@
                         (*aDataItr)->pAccShape->ResetState(AccessibleStateType::SELECTED);
                         (*aDataItr)->pAccShape->ResetState(AccessibleStateType::FOCUSED);
                         bResult = sal_True;
-//IAccessibility2 Implementation 2009-----
 						vecSelectedShapeRemove.push_back(*aDataItr);
-//-----IAccessibility2 Implementation 2009
                     }
                 }
                 ++aDataItr;
@@ -1033,7 +1013,6 @@
         else
             ++aDataItr;
     }
-//IAccessibility2 Implementation 2009-----
 	bool bWinFocus=false;
 	ScGridWindow* pWin = static_cast<ScGridWindow*>(mpViewShell->GetWindowByPos(meSplitPos));
 	if (pWin)
@@ -1148,7 +1127,6 @@
 		aEvent.NewValue <<= xChild;
 		mpAccessibleDocument->CommitChange(aEvent);
 	}
-//-----IAccessibility2 Implementation 2009
     std::for_each(aShapesList.begin(), aShapesList.end(), Destroy());
 
     return bResult;
@@ -1559,7 +1537,6 @@
 		const ScAccGridWinFocusGotHint& rRef = (const ScAccGridWinFocusGotHint&)rHint;
 		if (rRef.GetNewGridWin() == meSplitPos)
         {
-//IAccessibility2 Implementation 2009-----
 			uno::Reference<XAccessible> xAccessible;
 			if (mpChildrenShapes)
 			{
@@ -1584,7 +1561,6 @@
             else
                 CommitFocusGained();
 			}            
-//-----IAccessibility2 Implementation 2009
         }
 	}
 	else if (rHint.ISA( SfxSimpleHint ))
@@ -1603,18 +1579,14 @@
             {
                 mpChildrenShapes = new ScChildrenShapes( this, mpViewShell, meSplitPos );
             }
-//IAccessibility2 Implementation 2009-----
 			//Invoke Init() to rebuild the mpChildrenShapes variable
 			this->Init();
-//-----IAccessibility2 Implementation 2009
 			AccessibleEventObject aEvent;
 			aEvent.EventId = AccessibleEventId::INVALIDATE_ALL_CHILDREN;
 			aEvent.Source = uno::Reference< XAccessibleContext >(this);
 			CommitChange(aEvent); // all childs changed
-//IAccessibility2 Implementation 2009-----
 			if (mpAccessibleSpreadsheet)
 				mpAccessibleSpreadsheet->FireFirstCellFocus();
-//-----IAccessibility2 Implementation 2009
 		}
         else if (rRef.GetId() == SC_HINT_ACC_MAKEDRAWLAYER)
         {
@@ -1625,7 +1597,6 @@
         {
             if (mpViewShell && mpViewShell->GetViewData()->HasEditView(meSplitPos))
             {
-				//IAccessibility2 Implementation 2009------
 				EditEngine* pEditEng = mpViewShell->GetViewData()->GetEditView(meSplitPos)->GetEditEngine();
 				if (pEditEng && pEditEng->GetUpdateMode())
 				{
@@ -1643,7 +1614,6 @@
 
 					mpTempAccEdit->GotFocus();
 				}
-				//------IAccessibility2 Implementation 2009
             }
         }
         else if (rRef.GetId() == SC_HINT_ACC_LEAVEEDITMODE)
@@ -1655,15 +1625,9 @@
 
                 mpTempAccEdit = NULL;
                 RemoveChild(mxTempAcc, sal_True);
-//IAccessibility2 Implementation 2009-----
-                //if (mpAccessibleSpreadsheet)
                 if (mpAccessibleSpreadsheet && mpViewShell->IsActive())
-//-----IAccessibility2 Implementation 2009
                     mpAccessibleSpreadsheet->GotFocus();
-//IAccessibility2 Implementation 2009-----
-                //else
                 else if( mpViewShell->IsActive())
-//-----IAccessibility2 Implementation 2009
                     CommitFocusGained();
             }
         }
@@ -1724,12 +1688,10 @@
 
 		CommitChange(aEvent);
 	}
-//IAccessibility2 Implementation 2009-----
     if(mpChildrenShapes )
 	{
 		mpChildrenShapes->SelectionChanged();
 	}
-//-----IAccessibility2 Implementation 2009
 }
 
 	//=====  XInterface  =====================================================
@@ -1737,7 +1699,6 @@
 uno::Any SAL_CALL ScAccessibleDocument::queryInterface( uno::Type const & rType )
 	throw (uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	uno::Any aAnyTmp;
 	if(rType == ::getCppuType((com::sun::star::uno::Reference<XAccessibleGetAccFlowTo> *)NULL) )
        {
@@ -1745,7 +1706,6 @@
             aAnyTmp <<= AccFromXShape;
 	     return aAnyTmp;
        }
-//-----IAccessibility2 Implementation 2009
 	uno::Any aAny (ScAccessibleDocumentImpl::queryInterface(rType));
 	return aAny.hasValue() ? aAny : ScAccessibleContextBase::queryInterface(rType);
 }
@@ -1897,7 +1857,6 @@
 	return pStateSet;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString SAL_CALL
     ScAccessibleDocument::getAccessibleName(void)
     throw (::com::sun::star::uno::RuntimeException)
@@ -1927,7 +1886,6 @@
 	}
 	return sName;
 }
-//-----IAccessibility2 Implementation 2009
 	///=====  XAccessibleSelection  ===========================================
 
 void SAL_CALL
@@ -2400,7 +2358,6 @@
 {
     return rtl::OUString();
 }
-//IAccessibility2 Implementation 2009-----
 ScDocument *ScAccessibleDocument::GetDocument() const
 {
 	return mpViewShell ? mpViewShell->GetViewData()->GetDocument() : NULL;  
@@ -2554,7 +2511,7 @@
 	}
 	else if ( nType == FINDREPLACEFLOWTO )
 	{
-		sal_Bool bSuccess;
+		sal_Bool bSuccess(sal_False);
 		rAny >>= bSuccess;
 		if ( bSuccess )
 		{
@@ -2597,5 +2554,4 @@
     IsObjectValid();
     return SC_MOD()->GetColorConfig().GetColorValue( ::svtools::DOCCOLOR ).nColor;
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleDocumentBase.cxx b/main/sc/source/ui/Accessibility/AccessibleDocumentBase.cxx
index 9289608..e0b4eb6 100644
--- a/main/sc/source/ui/Accessibility/AccessibleDocumentBase.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleDocumentBase.cxx
@@ -45,10 +45,8 @@
 ScAccessibleDocumentBase::~ScAccessibleDocumentBase(void)
 {
 }
-//IAccessibility2 Implementation 2009-----
 void ScAccessibleDocumentBase::SwitchViewFireFocus()
 {
 	CommitFocusGained();
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx b/main/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
index 404646c..1504693 100644
--- a/main/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
@@ -1899,7 +1899,6 @@
     return mpShapeChilds;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString ScAccessibleDocumentPagePreview::getAccessibleName(void)
 throw (::com::sun::star::uno::RuntimeException)
 {
@@ -1926,7 +1925,6 @@
 
 	return sName;
 }
-//-----IAccessibility2 Implementation 2009=======
 
 //UNUSED2009-05 uno::Reference < XAccessible > ScAccessibleDocumentPagePreview::GetCurrentAccessibleTable()
 //UNUSED2009-05 {
diff --git a/main/sc/source/ui/Accessibility/AccessibleEditObject.cxx b/main/sc/source/ui/Accessibility/AccessibleEditObject.cxx
index 9fba9d7..99de49c 100644
--- a/main/sc/source/ui/Accessibility/AccessibleEditObject.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleEditObject.cxx
@@ -44,7 +44,6 @@
 #include <rtl/uuid.h>
 #include <tools/debug.hxx>
 #include <svx/AccessibleTextHelper.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/sheet/XSpreadsheetDocument.hpp>
 #include <com/sun/star/sheet/XSpreadsheet.hpp>
 #include <editeng/editview.hxx>
@@ -60,7 +59,6 @@
 #include <com/sun/star/accessibility/XAccessibleText.hpp>
 using ::com::sun::star::lang::IndexOutOfBoundsException;
 using ::com::sun::star::uno::RuntimeException;
-//-----IAccessibility2 Implementation 2009
 using namespace	::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 
@@ -81,7 +79,6 @@
     CreateTextHelper();
     SetName(rName);
     SetDescription(rDescription);
-//IAccessibility2 Implementation 2009-----
 	if( meObjectType == CellInEditMode)
 	{
 		const ScAccessibleDocument *pAccDoc = const_cast<ScAccessibleDocument*>(static_cast<ScAccessibleDocument*>(rxParent.get())) ;
@@ -97,7 +94,6 @@
 	}
 	else
 		m_pScDoc=NULL;
-//-----IAccessibility2 Implementation 2009
 }
 
 ScAccessibleEditObject::~ScAccessibleEditObject()
@@ -136,7 +132,6 @@
         mpTextHelper->SetFocus(sal_True);
 }
 
-//IAccessibility2 Implementation 2009-----
 //=====  XInterface  ==========================================================
 
 com::sun::star::uno::Any SAL_CALL
@@ -162,7 +157,6 @@
 {
     ScAccessibleContextBase::release ();
 }
-//-----IAccessibility2 Implementation 2009
 	//=====  XAccessibleComponent  ============================================
 
 uno::Reference< XAccessible > SAL_CALL ScAccessibleEditObject::getAccessibleAtPoint(
@@ -408,7 +402,6 @@
         }
     }
 }
-//IAccessibility2 Implementation 2009-----
 sal_Int32 SAL_CALL ScAccessibleEditObject::getForeground(  ) 
         throw (::com::sun::star::uno::RuntimeException)
 {
@@ -556,5 +549,4 @@
 	}
 	return uno::Reference< XAccessibleRelationSet >();
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx b/main/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx
index f912cbf..66be669 100644
--- a/main/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx
@@ -50,16 +50,13 @@
 #include <tools/debug.hxx>
 #include <tools/gen.hxx>
 #include <svtools/colorcfg.hxx>
-//IAccessibility2 Implementation 2009-----
 #include "scresid.hxx"
 #include "sc.hrc"
-//-----IAccessibility2 Implementation 2009
 #include <algorithm>
 
 using namespace	::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 
-//IAccessibility2 Implementation 2009-----
 bool CompMinCol(const std::pair<sal_uInt16,sal_uInt16> & pc1,const std::pair<sal_uInt16,sal_uInt16>  &pc2)
 {
     return pc1.first < pc2.first;
@@ -255,7 +252,6 @@
     }
     return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 //=====  internal  ============================================================
 
 ScAccessibleSpreadsheet::ScAccessibleSpreadsheet(
@@ -267,12 +263,10 @@
 	ScAccessibleTableBase (pAccDoc, GetDocument(pViewShell),
         ScRange(ScAddress(0, 0, nTab),ScAddress(MAXCOL, MAXROW, nTab))),
     mbIsSpreadsheet( sal_True ),
-//IAccessibility2 Implementation 2009-----
 	m_bFormulaMode(sal_False),
 	m_bFormulaLastMode(sal_False),
 	m_pAccFormulaCell(NULL),
 	m_nMinX(0),m_nMaxX(0),m_nMinY(0),m_nMaxY(0)
-//-----IAccessibility2 Implementation 2009
 {
     ConstructScAccessibleSpreadsheet( pAccDoc, pViewShell, nTab, eSplitPos );
 }
@@ -289,10 +283,6 @@
 {
 	if (mpMarkedRanges)
 		delete mpMarkedRanges;
-//IAccessibility2 Implementation 2009-----
-	//if (mpSortedMarkedCells)
-	//	delete mpSortedMarkedCells;
-//-----IAccessibility2 Implementation 2009
 	if (mpViewShell)
 		mpViewShell->RemoveAccessibilityObject(*this);
 }
@@ -326,13 +316,11 @@
         mpAccCell = GetAccessibleCellAt(maActiveCell.Row(), maActiveCell.Col());
         mpAccCell->acquire();
         mpAccCell->Init();
-		//IAccessibility2 Implementation 2009-----
 		ScDocument* pScDoc= GetDocument(mpViewShell);
 		if (pScDoc)
 		{
 			pScDoc->GetName( maActiveCell.Tab(), m_strOldTabName );
 		}
-		//-----IAccessibility2 Implementation 2009
     }	
 }
 
@@ -355,18 +343,12 @@
 
 void ScAccessibleSpreadsheet::CompleteSelectionChanged(sal_Bool bNewState)
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return ;
 	}
-//-----IAccessibility2 Implementation 2009
 	if (mpMarkedRanges)
 		DELETEZ(mpMarkedRanges);
-//IAccessibility2 Implementation 2009-----
-	//if (mpSortedMarkedCells)
-	//	DELETEZ(mpSortedMarkedCells);
-//-----IAccessibility2 Implementation 2009
 	mbHasSelection = bNewState;
 
     AccessibleEventObject aEvent;
@@ -395,14 +377,9 @@
 
 void ScAccessibleSpreadsheet::GotFocus()
 {
-//IAccessibility2 Implementation 2009-----
-    //CommitFocusGained();
-//-----IAccessibility2 Implementation 2009
 	AccessibleEventObject aEvent;
 	aEvent.EventId = AccessibleEventId::ACTIVE_DESCENDANT_CHANGED;
 	aEvent.Source = uno::Reference< XAccessibleContext >(this);
-//IAccessibility2 Implementation 2009-----
-    //uno::Reference< XAccessible > xNew = mpAccCell;
     uno::Reference< XAccessible > xNew;
 	if (IsFormulaMode())
 	{
@@ -434,7 +411,6 @@
 			return ;
 		}		
 	}
-//-----IAccessibility2 Implementation 2009
 	aEvent.NewValue <<= xNew;
 
 	CommitChange(aEvent);
@@ -465,69 +441,6 @@
 	if (rHint.ISA( SfxSimpleHint ) )
 	{
 		const SfxSimpleHint& rRef = (const SfxSimpleHint&)rHint;
-		// only notify if child exist, otherwise it is not necessary
-//IAccessibility2 Implementation 2009-----		
-		//if ((rRef.GetId() == SC_HINT_ACC_CURSORCHANGED))
-		//{
-		//	if (mpViewShell)
-		//	{
-		//		ScAddress aNewCell = mpViewShell->GetViewData()->GetCurPos();
-		//		sal_Bool bNewMarked(mpViewShell->GetViewData()->GetMarkData().GetTableSelect(aNewCell.Tab()) &&
-		//			(mpViewShell->GetViewData()->GetMarkData().IsMarked() ||
-		//			mpViewShell->GetViewData()->GetMarkData().IsMultiMarked()));
-		//		sal_Bool bNewCellSelected(isAccessibleSelected(aNewCell.Row(), aNewCell.Col()));
-		//		if ((bNewMarked != mbHasSelection) ||
-		//			(!bNewCellSelected && bNewMarked) ||
-		//			(bNewCellSelected && mbHasSelection))
-		//		{
-		//			if (mpMarkedRanges)
-		//				DELETEZ(mpMarkedRanges);
-		//			if (mpSortedMarkedCells)
-		//				DELETEZ(mpSortedMarkedCells);
-		//			AccessibleEventObject aEvent;
-		//			aEvent.EventId = AccessibleEventId::SELECTION_CHANGED;
-		//			aEvent.Source = uno::Reference< XAccessibleContext >(this);
-
-		//			mbHasSelection = bNewMarked;
-
-		//			CommitChange(aEvent);
-		//		}
-
-  //              // active descendant changed event (new cell selected)
-  //              bool bFireActiveDescChanged = (aNewCell != maActiveCell) &&
-  //                  (aNewCell.Tab() == maActiveCell.Tab()) && IsFocused();
-
-  //              /*  Remember old active cell and set new active cell.
-  //                  #i82409# always update the class members mpAccCell and
-  //                  maActiveCell, even if the sheet is not focused, e.g. when
-  //                  using the name box in the toolbar. */
-  //              uno::Reference< XAccessible > xOld = mpAccCell;
-  //              mpAccCell->release();
-  //              mpAccCell = GetAccessibleCellAt(aNewCell.Row(), aNewCell.Col());
-  //              mpAccCell->acquire();
-  //              mpAccCell->Init();
-  //              uno::Reference< XAccessible > xNew = mpAccCell;
-  //              maActiveCell = aNewCell;
-
-  //              // #i14108# fire event only if sheet is focused
-  //              if( bFireActiveDescChanged )
-  //              {
-  //                  AccessibleEventObject aEvent;
-  //                  aEvent.EventId = AccessibleEventId::ACTIVE_DESCENDANT_CHANGED;
-  //                  aEvent.Source = uno::Reference< XAccessibleContext >(this);
-  //                  aEvent.OldValue <<= xOld;
-  //                  aEvent.NewValue <<= xNew;
-		//			CommitChange(aEvent);
-  //              }
-		//	}
-		//}
-		//else if ((rRef.GetId() == SC_HINT_DATACHANGED))
-		//{
-		//	if (!mbDelIns)
-		//		CommitTableModelChange(maRange.aStart.Row(), maRange.aStart.Col(), maRange.aEnd.Row(), maRange.aEnd.Col(), AccessibleTableModelChangeType::UPDATE);
-		//	else
-		//		mbDelIns = sal_False;
-		//}
 		if ((rRef.GetId() == SC_HINT_ACC_CURSORCHANGED))
 		{
 			if (mpViewShell)
@@ -749,7 +662,6 @@
                 }
             }
         }
-//-----IAccessibility2 Implementation 2009
         // no longer needed, because the document calls the VisAreaChanged method
 /*		else if (rRef.GetId() == SC_HINT_ACC_VISAREACHANGED)
 		{
@@ -850,7 +762,6 @@
 
 	ScAccessibleTableBase::Notify(rBC, rHint);
 }
-//IAccessibility2 Implementation 2009-----
 void ScAccessibleSpreadsheet::RemoveSelection(ScMarkData &refScMarkData)
 {
 	AccessibleEventObject aEvent;
@@ -905,7 +816,6 @@
 {
     return m_LastMarkedRanges == *mpMarkedRanges;
 }
-//-----IAccessibility2 Implementation 2009
 	//=====  XAccessibleTable  ================================================
 
 uno::Reference< XAccessibleTable > SAL_CALL ScAccessibleSpreadsheet::getAccessibleRowHeaders(  )
@@ -952,12 +862,10 @@
 	ScUnoGuard aGuard;
     IsObjectValid();
 	uno::Sequence<sal_Int32> aSequence;
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return aSequence;
 	}
-//-----IAccessibility2 Implementation 2009
 	if (mpViewShell && mpViewShell->GetViewData())
 	{
 		aSequence.realloc(maRange.aEnd.Row() - maRange.aStart.Row() + 1);
@@ -985,12 +893,10 @@
 	ScUnoGuard aGuard;
     IsObjectValid();
 	uno::Sequence<sal_Int32> aSequence;
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return aSequence;
 	}
-//-----IAccessibility2 Implementation 2009
 	if (mpViewShell && mpViewShell->GetViewData())
 	{
 		aSequence.realloc(maRange.aEnd.Col() - maRange.aStart.Col() + 1);
@@ -1017,12 +923,10 @@
 {
 	ScUnoGuard aGuard;
     IsObjectValid();
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return sal_False;
 	}
-//-----IAccessibility2 Implementation 2009
 
     if ((nRow > (maRange.aEnd.Row() - maRange.aStart.Row())) || (nRow < 0))
         throw lang::IndexOutOfBoundsException();
@@ -1042,12 +946,10 @@
 	ScUnoGuard aGuard;
     IsObjectValid();
 
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return sal_False;
 	}
-//-----IAccessibility2 Implementation 2009
     if ((nColumn > (maRange.aEnd.Col() - maRange.aStart.Col())) || (nColumn < 0))
         throw lang::IndexOutOfBoundsException();
 
@@ -1063,7 +965,6 @@
 ScAccessibleCell* ScAccessibleSpreadsheet::GetAccessibleCellAt(sal_Int32 nRow, sal_Int32 nColumn)
 {
     ScAccessibleCell* pAccessibleCell = NULL;
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		ScAddress aCellAddress(static_cast<SCCOL>(nColumn), nRow, mpViewShell->GetViewData()->GetTabNo());
@@ -1076,7 +977,6 @@
 	}
 	else
 	{
-//-----IAccessibility2 Implementation 2009
 	ScAddress aCellAddress(static_cast<SCCOL>(maRange.aStart.Col() + nColumn),
 		static_cast<SCROW>(maRange.aStart.Row() + nRow), maRange.aStart.Tab());
     if ((aCellAddress == maActiveCell) && mpAccCell)
@@ -1095,7 +995,6 @@
 {
 	ScUnoGuard aGuard;
     IsObjectValid();
-//IAccessibility2 Implementation 2009-----
 	if (!IsFormulaMode())
 	{
     if (nRow > (maRange.aEnd.Row() - maRange.aStart.Row()) ||
@@ -1104,7 +1003,6 @@
         nColumn < 0)
         throw lang::IndexOutOfBoundsException();
 	}
-//-----IAccessibility2 Implementation 2009
     uno::Reference<XAccessible> xAccessible;
     ScAccessibleCell* pAccessibleCell = GetAccessibleCellAt(nRow, nColumn);
     xAccessible = pAccessibleCell;
@@ -1118,13 +1016,11 @@
 	ScUnoGuard aGuard;
     IsObjectValid();
 
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		ScAddress addr(static_cast<SCCOL>(nColumn), nRow, 0);
 		return IsScAddrFormulaSel(addr);
 	}
-//-----IAccessibility2 Implementation 2009
     if ((nColumn > (maRange.aEnd.Col() - maRange.aStart.Col())) || (nColumn < 0) ||
         (nRow > (maRange.aEnd.Row() - maRange.aStart.Row())) || (nRow < 0))
         throw lang::IndexOutOfBoundsException();
@@ -1154,7 +1050,6 @@
 		    SCsCOL nX;
             SCsROW nY;
 		    mpViewShell->GetViewData()->GetPosFromPixel( rPoint.X, rPoint.Y, meSplitPos, nX, nY);
-//IAccessibility2 Implementation 2009-----
 			try{
 		    xAccessible = getAccessibleCellAt(nY, nX);
 			}
@@ -1162,7 +1057,6 @@
 			{
 				return NULL;
 			}
-//-----IAccessibility2 Implementation 2009
 	    }
     }
 	return xAccessible;
@@ -1270,9 +1164,7 @@
     IsObjectValid();
 	if (mpViewShell)
 	{
-//IAccessibility2 Implementation 2009-----
 		if (!IsFormulaMode())
-//-----IAccessibility2 Implementation 2009
 		mpViewShell->Unmark();
 	}
 }
@@ -1285,7 +1177,6 @@
     IsObjectValid();
 	if (mpViewShell)
 	{
-//IAccessibility2 Implementation 2009-----
 		if (IsFormulaMode())
 		{
 			ScViewData *pViewData = mpViewShell->GetViewData();		
@@ -1295,7 +1186,6 @@
 			mpViewShell->UpdateRef(MAXCOL, MAXROW, pViewData->GetTabNo());
 		}
 		else
-//-----IAccessibility2 Implementation 2009
 		mpViewShell->SelectAll();
 	}
 }
@@ -1309,21 +1199,17 @@
 	sal_Int32 nResult(0);
 	if (mpViewShell)
 	{
-//IAccessibility2 Implementation 2009-----
 		if (IsFormulaMode())
 		{
 			nResult =  GetRowAll() * GetColAll() ;
 		}
 		else
 		{		
-//-----IAccessibility2 Implementation 2009
 		if (!mpMarkedRanges)
 		{
 			mpMarkedRanges = new ScRangeList();
             ScMarkData aMarkData(mpViewShell->GetViewData()->GetMarkData());
-//IAccessibility2 Implementation 2009-----
             //aMarkData.MarkToMulti();
-//-----IAccessibility2 Implementation 2009
 			aMarkData.FillRangeListWithMarks(mpMarkedRanges, sal_False);
 		}
 		// is possible, because there shouldn't be overlapped ranges in it
@@ -1341,7 +1227,6 @@
 	ScUnoGuard aGuard;
     IsObjectValid();
 	uno::Reference < XAccessible > xAccessible;
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		if(CheckChildIndex(nSelectedChildIndex))
@@ -1351,7 +1236,6 @@
 		}
 		return xAccessible;
 	}
-//-----IAccessibility2 Implementation 2009
 	if (mpViewShell)
 	{
 		if (!mpMarkedRanges)
@@ -1361,7 +1245,6 @@
 		}
 		if (mpMarkedRanges)
 		{
-//IAccessibility2 Implementation 2009-----
 			//if (!mpSortedMarkedCells)
 			//	CreateSortedMarkedCells();
 			//if (mpSortedMarkedCells)
@@ -1381,7 +1264,6 @@
 				xAccessible = m_mapSelectionSend[addr];
 			else			
 				xAccessible = getAccessibleCellAt(addr.Row(), addr.Col());
-//-----IAccessibility2 Implementation 2009
 		}
 	}
 	return xAccessible;
@@ -1402,7 +1284,6 @@
 		sal_Int32 nCol(getAccessibleColumn(nChildIndex));
 		sal_Int32 nRow(getAccessibleRow(nChildIndex));
 
-//IAccessibility2 Implementation 2009-----
 		if (IsFormulaMode())
 		{
 			if(IsScAddrFormulaSel(
@@ -1413,7 +1294,6 @@
 			}
 			return ;
 		}
-//-----IAccessibility2 Implementation 2009
 		if (mpViewShell->GetViewData()->GetMarkData().IsCellMarked(static_cast<SCCOL>(nCol), static_cast<SCROW>(nRow)))
 			SelectCell(nRow, nCol, sal_True);
 	}
@@ -1421,7 +1301,6 @@
 
 void ScAccessibleSpreadsheet::SelectCell(sal_Int32 nRow, sal_Int32 nCol, sal_Bool bDeselect)
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		if (bDeselect)
@@ -1437,7 +1316,6 @@
 		}
 		return ;
 	}
-//-----IAccessibility2 Implementation 2009
 	mpViewShell->SetTabNo( maRange.aStart.Tab() );
 
 	mpViewShell->DoneBlockMode( sal_True ); // continue selecting
@@ -1445,52 +1323,6 @@
 
 	mpViewShell->SelectionChanged();
 }
-//IAccessibility2 Implementation 2009-----
-//void ScAccessibleSpreadsheet::CreateSortedMarkedCells()
-//{
-//	mpSortedMarkedCells = new std::vector<ScMyAddress>();
-//	mpSortedMarkedCells->reserve(mpMarkedRanges->GetCellCount());
-//	ScRange* pRange = mpMarkedRanges->First();
-//	while (pRange)
-//	{
-//		if (pRange->aStart.Tab() != pRange->aEnd.Tab())
-//		{
-//			if ((maActiveCell.Tab() >= pRange->aStart.Tab()) ||
-//				maActiveCell.Tab() <= pRange->aEnd.Tab())
-//			{
-//				ScRange aRange(*pRange);
-//				aRange.aStart.SetTab(maActiveCell.Tab());
-//				aRange.aEnd.SetTab(maActiveCell.Tab());
-//				AddMarkedRange(aRange);
-//			}
-//			else
-//			{
-//				DBG_ERROR("Range of wrong table");
-//			}
-//		}
-//		else if(pRange->aStart.Tab() == maActiveCell.Tab())
-//			AddMarkedRange(*pRange);
-//		else
-//		{
-//			DBG_ERROR("Range of wrong table");
-//		}
-//		pRange = mpMarkedRanges->Next();
-//	}
-//	std::sort(mpSortedMarkedCells->begin(), mpSortedMarkedCells->end());
-//}
-
-/*void ScAccessibleSpreadsheet::AddMarkedRange(const ScRange& rRange)
-{
-	for (SCROW nRow = rRange.aStart.Row(); nRow <= rRange.aEnd.Row(); ++nRow)
-	{
-		for (SCCOL nCol = rRange.aStart.Col(); nCol <= rRange.aEnd.Col(); ++nCol)
-		{
-			ScMyAddress aCell(nCol, nRow, maActiveCell.Tab());
-			mpSortedMarkedCells->push_back(aCell);
-		}
-	}
-}*/
-//-----IAccessibility2 Implementation 2009
 
 	//=====  XServiceInfo  ====================================================
 
@@ -1539,22 +1371,6 @@
     ScUnoGuard aGuard;
     IsObjectValid();
     ScAccessibleTableBase::addEventListener(xListener);
-
-//IAccessibility2 Implementation 2009-----
-/*    if (!mbIsFocusSend)
-    {
-        mbIsFocusSend = sal_True;
-        CommitFocusGained();
-
-		AccessibleEventObject aEvent;
-		aEvent.EventId = AccessibleEventId::ACTIVE_DESCENDANT_CHANGED;
-		aEvent.Source = uno::Reference< XAccessibleContext >(this);
-		aEvent.NewValue <<= getAccessibleCellAt(maActiveCell.Row(), maActiveCell.Col());
-
-		CommitChange(aEvent);
-    }
-*/
-//-----IAccessibility2 Implementation 2009
 }
 
 	//====  internal  =========================================================
@@ -1596,12 +1412,10 @@
 sal_Bool ScAccessibleSpreadsheet::IsEditable(
     const uno::Reference<XAccessibleStateSet>& /* rxParentStates */)
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return sal_False;
 	}
-//-----IAccessibility2 Implementation 2009
 	sal_Bool bProtected(sal_False);
 	if (mpDoc && mpDoc->IsTabProtected(maRange.aStart.Tab()))
 		bProtected = sal_True;
@@ -1621,12 +1435,10 @@
 
 sal_Bool ScAccessibleSpreadsheet::IsCompleteSheetSelected()
 {
-//IAccessibility2 Implementation 2009-----
 	if (IsFormulaMode())
 	{
 		return sal_False;
 	}
-//-----IAccessibility2 Implementation 2009
 	sal_Bool bResult(sal_False);
 	if(mpViewShell)
 	{
@@ -1677,7 +1489,6 @@
 	else
 		return Rectangle();
 }
-//IAccessibility2 Implementation 2009-----
 sal_Bool SAL_CALL ScAccessibleSpreadsheet::selectRow( sal_Int32 row ) 
 throw (lang::IndexOutOfBoundsException, uno::RuntimeException) 
 {
@@ -1950,4 +1761,3 @@
 		else
 			return getAccessibleCellAt(maActiveCell.Row(), maActiveCell .Col());
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/Accessibility/AccessibleTableBase.cxx b/main/sc/source/ui/Accessibility/AccessibleTableBase.cxx
index cd1bea7..bf8791b 100644
--- a/main/sc/source/ui/Accessibility/AccessibleTableBase.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleTableBase.cxx
@@ -77,7 +77,6 @@
 uno::Any SAL_CALL ScAccessibleTableBase::queryInterface( uno::Type const & rType )
 	throw (uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	//uno::Any aAny (ScAccessibleTableBaseImpl::queryInterface(rType));
 	//return aAny.hasValue() ? aAny : ScAccessibleContextBase::queryInterface(rType);
 	uno::Any aRet;
@@ -93,7 +92,6 @@
 		return aAny.hasValue() ? aAny : ScAccessibleContextBase::queryInterface(rType);
 	}
 	return aRet;
-//-----IAccessibility2 Implementation 2009
 }
 
 void SAL_CALL ScAccessibleTableBase::acquire()
@@ -168,18 +166,10 @@
 	{
 		SCROW nEndRow(0);
         SCCOL nEndCol(0);
-//IAccessibility2 Implementation 2009-----
 		mpDoc->GetTableByIndex(maRange.aStart.Tab())->GetColumnByIndex(nColumn)->
 			ExtendMerge( static_cast<SCCOL>(nColumn), static_cast<SCROW>(nRow), nRow, nEndCol, nEndRow, sal_False, sal_False );
 		if (nEndRow > nRow)
 			   nCount = nEndRow - nRow + 1;
-	//	if (mpDoc->ExtendMerge(static_cast<SCCOL>(nColumn), static_cast<SCROW>(nRow),
-	//		nEndCol, nEndRow, maRange.aStart.Tab()))
-        //{
-	//	    if (nEndRow > nRow)
-	//		    nCount = nEndRow - nRow + 1;
-        //}
-//-----IAccessibility2 Implementation 2009
 	}
 
 	return nCount;
@@ -203,18 +193,10 @@
 	{
 		SCROW nEndRow(0);
         SCCOL nEndCol(0);
-//IAccessibility2 Implementation 2009-----
 		mpDoc->GetTableByIndex(maRange.aStart.Tab())->GetColumnByIndex(nColumn)->
 			ExtendMerge( static_cast<SCCOL>(nColumn), static_cast<SCROW>(nRow), nRow, nEndCol, nEndRow, sal_False, sal_False );
 		if (nEndCol > nColumn)
 			    nCount = nEndCol - nColumn + 1;
-	//	if (mpDoc->ExtendMerge(static_cast<SCCOL>(nColumn), static_cast<SCROW>(nRow),
-	//		nEndCol, nEndRow, maRange.aStart.Tab()))
-        //{
-	//	    if (nEndCol > nColumn)
-	//		    nCount = nEndCol - nColumn + 1;
-        //}
-//-----IAccessibility2 Implementation 2009
 	}
 
 	return nCount;
@@ -516,7 +498,6 @@
 
 	CommitChange(aEvent);
 }
-//IAccessibility2 Implementation 2009-----
 sal_Bool SAL_CALL ScAccessibleTableBase::selectRow( sal_Int32 ) 
 throw (lang::IndexOutOfBoundsException, uno::RuntimeException) 
 {
@@ -537,6 +518,5 @@
 {
 	return sal_True;
 }
-//-----IAccessibility2 Implementation 2009
 
 
diff --git a/main/sc/source/ui/Accessibility/AccessibleText.cxx b/main/sc/source/ui/Accessibility/AccessibleText.cxx
index ef59353..4abd792 100644
--- a/main/sc/source/ui/Accessibility/AccessibleText.cxx
+++ b/main/sc/source/ui/Accessibility/AccessibleText.cxx
@@ -1058,10 +1058,7 @@
 
 
 // ============================================================================
-//IAccessibility2 Implementation 2009-----
-//ScAccessibleEditObjectTextData::ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin)
 ScAccessibleEditObjectTextData::ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin, sal_Bool isClone)
-//-----IAccessibility2 Implementation 2009
 	:
 	mpViewForwarder(NULL),
 	mpEditViewForwarder(NULL),
@@ -1070,22 +1067,16 @@
     mpForwarder(NULL),
     mpWindow(pWin)
 {
-//IAccessibility2 Implementation 2009-----
 	// Solution: If the object is cloned, do NOT add notify hdl.
 	mbIsCloned = isClone;
-    //if (mpEditEngine)
     if (mpEditEngine && !mbIsCloned)
-//-----IAccessibility2 Implementation 2009
         mpEditEngine->SetNotifyHdl( LINK(this, ScAccessibleEditObjectTextData, NotifyHdl) );
 }
 
 ScAccessibleEditObjectTextData::~ScAccessibleEditObjectTextData()
 {
-//IAccessibility2 Implementation 2009-----
 	// Solution: If the object is cloned, do NOT set notify hdl.
-    //if (mpEditEngine)
     if (mpEditEngine && !mbIsCloned)
-//-----IAccessibility2 Implementation 2009
         mpEditEngine->SetNotifyHdl(Link());
 	if (mpViewForwarder)
 		delete mpViewForwarder;
@@ -1117,11 +1108,9 @@
 
 ScAccessibleTextData* ScAccessibleEditObjectTextData::Clone() const
 {
-//IAccessibility2 Implementation 2009-----
 	// Solution: Add para to indicate the object is cloned
 	//return new ScAccessibleEditObjectTextData(mpEditView, mpWindow);
 	return new ScAccessibleEditObjectTextData(mpEditView, mpWindow,sal_True);
-//-----IAccessibility2 Implementation 2009
 }
 
 SvxTextForwarder* ScAccessibleEditObjectTextData::GetTextForwarder()
@@ -1130,11 +1119,8 @@
 	{
         if (!mpEditEngine)
             mpEditEngine = mpEditView->GetEditEngine();
-//IAccessibility2 Implementation 2009-----
 			// Solution: If the object is cloned, do NOT add notify hdl.
-        //if (mpEditEngine && !mpEditEngine->GetNotifyHdl().IsSet())
 	if (mpEditEngine && !mpEditEngine->GetNotifyHdl().IsSet()&&!mbIsCloned)
-//-----IAccessibility2 Implementation 2009
             mpEditEngine->SetNotifyHdl( LINK(this, ScAccessibleEditObjectTextData, NotifyHdl) );
         if(!mpForwarder)
             mpForwarder = new SvxEditEngineForwarder(*mpEditEngine);
diff --git a/main/sc/source/ui/app/inputhdl.cxx b/main/sc/source/ui/app/inputhdl.cxx
index 59a4cbc..552e631 100644
--- a/main/sc/source/ui/app/inputhdl.cxx
+++ b/main/sc/source/ui/app/inputhdl.cxx
@@ -3453,13 +3453,11 @@
 							else
 								aCursorPos.Format( aPosStr, SCA_VALID | nFlags, pDoc, aAddrDetails );
 						}
-						//IAccessibility2 Implementation 2009-----
 						// Disable the accessible VALUE_CHANGE event
 						sal_Bool bIsSuppressed = pInputWin->IsAccessibilityEventsSuppressed(sal_False);
 						pInputWin->SetAccessibilityEventsSuppressed(sal_True);
 						pInputWin->SetPosString(aPosStr);
 						pInputWin->SetAccessibilityEventsSuppressed(bIsSuppressed);
-						//-----IAccessibility2 Implementation 2009
 						pInputWin->SetSumAssignMode();
 					}
 
diff --git a/main/sc/source/ui/dbgui/dbnamdlg.cxx b/main/sc/source/ui/dbgui/dbnamdlg.cxx
index 9b09e54..654058e 100644
--- a/main/sc/source/ui/dbgui/dbnamdlg.cxx
+++ b/main/sc/source/ui/dbgui/dbnamdlg.cxx
@@ -180,11 +180,9 @@
 						aBtnDoSize, aBtnKeepFmt, aBtnStripData, theCurArea );
 	Init();
 	FreeResource();
-	//IAccessibility2 Implementation 2009-----
 	SynFocusTimer.SetTimeout(150);
 	SynFocusTimer.SetTimeoutHdl(LINK( this, ScDbNameDlg, FocusToComoboxHdl));
 	SynFocusTimer.Start();
-	//-----IAccessibility2 Implementation 2009
 	aRbAssign.SetAccessibleRelationMemberOf(&aFlAssign);
 }
 
@@ -721,7 +719,6 @@
 	String aText = aEdAssign.GetText();
 	if ( aTmpRange.ParseAny( aText, pDoc, aAddrDetails ) & SCA_VALID )
 		theCurArea = aTmpRange;
-//IAccessibility2 Implementation 2009-----
     if( aText.Len() > 0 && aEdName.GetText().Len() > 0 )
     {
 		aBtnAdd.Enable();
@@ -742,11 +739,9 @@
 		aFTSource.Disable();
 		aFTOperations.Disable();
     }
-//-----IAccessibility2 Implementation 2009
 	return 0;
 }
 
-//IAccessibility2 Implementation 2009-----
 IMPL_LINK( ScDbNameDlg, FocusToComoboxHdl, Timer*, pTi)
 {	
 	(void)pTi;
@@ -754,4 +749,3 @@
 	// aEdName.CallEventListeners( VCLEVENT_CONTROL_GETFOCUS );
 	return 0;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/dbgui/scendlg.hrc b/main/sc/source/ui/dbgui/scendlg.hrc
index 7dcc6f3..4feffa3 100644
--- a/main/sc/source/ui/dbgui/scendlg.hrc
+++ b/main/sc/source/ui/dbgui/scendlg.hrc
@@ -51,6 +51,4 @@
 #define STR_CREATEDBY           31
 #define STR_ON                  32
 #define STR_EDIT                33
-//IAccessibility2 Implementation 2009-----
 #define STR_COLOR		34
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/docshell/docsh.cxx b/main/sc/source/ui/docshell/docsh.cxx
index 4644e60..cb9d520 100644
--- a/main/sc/source/ui/docshell/docsh.cxx
+++ b/main/sc/source/ui/docshell/docsh.cxx
@@ -121,9 +121,7 @@
 
 #include "docsh.hxx"
 #include "docshimp.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <sfx2/viewfrm.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <rtl/logfile.hxx>
 
 #include <comphelper/processfactory.hxx>
@@ -1590,7 +1588,6 @@
 
     PrepareSaveGuard aPrepareGuard( *this);
 
-//IAccessibility2 Implementation 2009-----
 	aDocument.setDocAccTitle(String());
 	// SfxViewFrame* pFrame1 = SfxViewFrame::GetFirst( this, TYPE(SfxTopViewFrame));
 	SfxViewFrame* pFrame1 = SfxViewFrame::GetFirst( this );
@@ -1606,7 +1603,6 @@
 			}
 		}
 	}
-//-----IAccessibility2 Implementation 2009
 	//	wait cursor is handled with progress bar
     sal_Bool bRet = SfxObjectShell::SaveAs( rMedium );
 	if( bRet )
diff --git a/main/sc/source/ui/drawfunc/fudraw.cxx b/main/sc/source/ui/drawfunc/fudraw.cxx
index 02c2e50..0f43045 100644
--- a/main/sc/source/ui/drawfunc/fudraw.cxx
+++ b/main/sc/source/ui/drawfunc/fudraw.cxx
@@ -354,11 +354,9 @@
 					// changeover to the next object
 					if(!pView->MarkNextObj( !aCode.IsShift() ))
 					{
-//IAccessibility2 Implementation 2009-----
 						//If there is only one object, don't do the UnmarkAlllObj() & MarkNextObj(). 
 						if ( pView->GetMarkableObjCount() > 1 && pView->HasMarkableObj() )
 						{
-//-----IAccessibility2 Implementation 2009
 						// #97016# No next object: go over open end and
 						// get first from the other side
 						pView->UnmarkAllObj();
diff --git a/main/sc/source/ui/inc/AccessibleCell.hxx b/main/sc/source/ui/inc/AccessibleCell.hxx
index e2f7f0a..e5ffea3 100644
--- a/main/sc/source/ui/inc/AccessibleCell.hxx
+++ b/main/sc/source/ui/inc/AccessibleCell.hxx
@@ -32,11 +32,9 @@
 #include <unotools/accessiblerelationsethelper.hxx>
 #include <editeng/AccessibleStaticTextBase.hxx>
 #include <comphelper/uno3.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XAccessibleExtendedAttributes_HPP_
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 class ScTabViewShell;
 class ScAccessibleDocument;
@@ -51,9 +49,7 @@
 class ScAccessibleCell
 	:	public	ScAccessibleCellBase,
         public  accessibility::AccessibleStaticTextBase,
-//IAccessibility2 Implementation 2009-----
 		public  ScAccessibleCellAttributeImpl
-//-----IAccessibility2 Implementation 2009
 {
 public:
 	//=====  internal  ========================================================
@@ -145,14 +141,12 @@
     	getSupportedServiceNames(void)
         throw (::com::sun::star::uno::RuntimeException);
 
-//IAccessibility2 Implementation 2009-----
     virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
 
 	// Override this method to handle cell's ParaIndent attribute specially.
     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 private:
 	ScTabViewShell* mpViewShell;
     ScAccessibleDocument* mpAccDoc;
@@ -182,10 +176,8 @@
 	void AddRelation(const ScRange& rRange,
 		const sal_uInt16 aRelationType,
 		::utl::AccessibleRelationSetHelper* pRelationSet);
-//IAccessibility2 Implementation 2009-----
 	sal_Bool IsFormulaMode();
 	sal_Bool IsDropdown();
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/AccessibleCellBase.hxx b/main/sc/source/ui/inc/AccessibleCellBase.hxx
index 6648be8..c88aaa3 100644
--- a/main/sc/source/ui/inc/AccessibleCellBase.hxx
+++ b/main/sc/source/ui/inc/AccessibleCellBase.hxx
@@ -142,7 +142,6 @@
 	virtual sal_Bool IsEditable(
 		const com::sun::star::uno::Reference<
 		::com::sun::star::accessibility::XAccessibleStateSet>& rxParentStates);
-//IAccessibility2 Implementation 2009-----
 protected:
 	virtual ::rtl::OUString SAL_CALL GetNote(void)
         throw (::com::sun::star::uno::RuntimeException);
@@ -156,7 +155,6 @@
 public:
 	const ScAddress& GetCellAddress() const { return maCellAddress; }
 	sal_Bool IsCellInChangeTrack(const ScAddress &cell,Color *pColCellBoder);
-//-----IAccessibility2 Implementation 2009
 };
 	
 
diff --git a/main/sc/source/ui/inc/AccessibleDocument.hxx b/main/sc/source/ui/inc/AccessibleDocument.hxx
index 9411496..352647b 100644
--- a/main/sc/source/ui/inc/AccessibleDocument.hxx
+++ b/main/sc/source/ui/inc/AccessibleDocument.hxx
@@ -29,12 +29,9 @@
 #include "viewdata.hxx"
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 #include <com/sun/star/view/XSelectionChangeListener.hpp>
-//IAccessibility2 Implementation 2009-----
-//#include <cppuhelper/implbase2.hxx>
 #include <cppuhelper/implbase3.hxx>
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
 #include <com/sun/star/accessibility/XAccessibleGetAccFlowTo.hpp>
-//-----IAccessibility2 Implementation 2009
 #include <svx/IAccessibleViewForwarder.hxx>
 
 class ScTabViewShell;
@@ -56,19 +53,15 @@
         <code>AccessibleContext</code> service.
 */
 
-//IAccessibility2 Implementation 2009-----
 typedef cppu::ImplHelper3< ::com::sun::star::accessibility::XAccessibleSelection,
 							::com::sun::star::accessibility::XAccessibleExtendedAttributes,
-//-----IAccessibility2 Implementation 2009
 							::com::sun::star::view::XSelectionChangeListener >
 					ScAccessibleDocumentImpl;
 
 class ScAccessibleDocument
 	:	public ScAccessibleDocumentBase,
 		public ScAccessibleDocumentImpl,
-//IAccessibility2 Implementation 2009-----
 	       public com::sun::star::accessibility::XAccessibleGetAccFlowTo,
-//-----IAccessibility2 Implementation 2009
         public accessibility::IAccessibleViewForwarder
 {
 public:
@@ -135,14 +128,12 @@
     	getAccessibleStateSet(void)
         throw (::com::sun::star::uno::RuntimeException);
 
-//IAccessibility2 Implementation 2009-----
 	virtual ::rtl::OUString SAL_CALL
 		getAccessibleName(void)
 		throw (::com::sun::star::uno::RuntimeException);
 
 	virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-//-----IAccessibility2 Implementation 2009
 	///=====  XAccessibleSelection  ===========================================
 
     virtual void SAL_CALL 
@@ -337,7 +328,6 @@
     rtl::OUString GetCurrentCellDescription() const;
 
     Rectangle GetVisibleArea_Impl() const;
-//IAccessibility2 Implementation 2009-----
     com::sun::star::uno::Sequence< com::sun::star::uno::Any > GetScAccFlowToSequence();
 public:
 	ScDocument *GetDocument() const ;
@@ -354,7 +344,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 protected:
 	void SwitchViewFireFocus();
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/AccessibleDocumentBase.hxx b/main/sc/source/ui/inc/AccessibleDocumentBase.hxx
index 7db24aa..9fdeb86 100644
--- a/main/sc/source/ui/inc/AccessibleDocumentBase.hxx
+++ b/main/sc/source/ui/inc/AccessibleDocumentBase.hxx
@@ -37,9 +37,7 @@
 	ScAccessibleDocumentBase(
         const ::com::sun::star::uno::Reference<
         ::com::sun::star::accessibility::XAccessible>& rxParent);
-//IAccessibility2 Implementation 2009-----
 	virtual void SwitchViewFireFocus();
-//-----IAccessibility2 Implementation 2009
 protected:
 	virtual ~ScAccessibleDocumentBase	(void);
 };
diff --git a/main/sc/source/ui/inc/AccessibleDocumentPagePreview.hxx b/main/sc/source/ui/inc/AccessibleDocumentPagePreview.hxx
index 5896cdf..c1b1196 100644
--- a/main/sc/source/ui/inc/AccessibleDocumentPagePreview.hxx
+++ b/main/sc/source/ui/inc/AccessibleDocumentPagePreview.hxx
@@ -85,10 +85,8 @@
     	getAccessibleStateSet(void)
         throw (::com::sun::star::uno::RuntimeException);
 
-//IAccessibility2 Implementation 2009-----
 	virtual ::rtl::OUString SAL_CALL getAccessibleName(void)
 		throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 	///=====  XServiceInfo  ====================================================
 
     /**	Returns an identifier for the implementation of this object.
diff --git a/main/sc/source/ui/inc/AccessibleEditObject.hxx b/main/sc/source/ui/inc/AccessibleEditObject.hxx
index b71baec..55c3909 100644
--- a/main/sc/source/ui/inc/AccessibleEditObject.hxx
+++ b/main/sc/source/ui/inc/AccessibleEditObject.hxx
@@ -27,10 +27,8 @@
 
 #include "AccessibleContextBase.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 #include "global.hxx"
-//-----IAccessibility2 Implementation 2009
 namespace accessibility
 {
     class AccessibleTextHelper;
@@ -51,9 +49,7 @@
 */
 class ScAccessibleEditObject
 	:	public	ScAccessibleContextBase,
-//IAccessibility2 Implementation 2009-----
         public ::com::sun::star::accessibility::XAccessibleSelection 
-//-----IAccessibility2 Implementation 2009
 {
 public:
 	//=====  internal  ========================================================
@@ -78,7 +74,6 @@
     virtual void LostFocus();
 
     virtual void GotFocus();
-//IAccessibility2 Implementation 2009-----
 ///=====  XInterface  =====================================================
 
 	virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
@@ -88,7 +83,6 @@
 	virtual void SAL_CALL acquire() throw ();
 
 	virtual void SAL_CALL release() throw ();
-//-----IAccessibility2 Implementation 2009
 	///=====  XAccessibleComponent  ============================================
 
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
@@ -152,7 +146,6 @@
 			throw ( ::com::sun::star::lang::IndexOutOfBoundsException, 
 			::com::sun::star::uno::RuntimeException );
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet(  ) throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 protected:
     ///	Return this object's description.
 	virtual ::rtl::OUString SAL_CALL
@@ -211,7 +204,6 @@
 		::com::sun::star::accessibility::XAccessibleStateSet>& rxParentStates);
 
 	void CreateTextHelper();
-//IAccessibility2 Implementation 2009-----
 	ScDocument *m_pScDoc;
 	ScAddress m_curCellAddress;
 
@@ -224,7 +216,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 
 	sal_Int32 GetFgBgColor(  const rtl::OUString &strPropColor) ;
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/AccessibleSpreadsheet.hxx b/main/sc/source/ui/inc/AccessibleSpreadsheet.hxx
index 4065ac1..b326a99 100644
--- a/main/sc/source/ui/inc/AccessibleSpreadsheet.hxx
+++ b/main/sc/source/ui/inc/AccessibleSpreadsheet.hxx
@@ -30,10 +30,8 @@
 
 #include <vector>
 
-//IAccessibility2 Implementation 2009-----
 #include "rangelst.hxx"
 #include <map>
-//-----IAccessibility2 Implementation 2009
 class ScMyAddress : public ScAddress
 {
 public:
@@ -243,7 +241,6 @@
         	const ::com::sun::star::uno::Reference<
                 ::com::sun::star::accessibility::XAccessibleEventListener>& xListener)
         throw (com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleTableSelection  ============================================
 	virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
@@ -253,7 +250,6 @@
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
     virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-//-----IAccessibility2 Implementation 2009
 
 protected:
     ///	Return the object's current bounding box relative to the desktop.
@@ -294,7 +290,6 @@
 	ScDocument* GetDocument(ScTabViewShell* pViewShell);
 	Rectangle	GetVisArea(ScTabViewShell* pViewShell, ScSplitPos eSplitPos);
 	Rectangle	GetVisCells(const Rectangle& rVisArea);
-//IAccessibility2 Implementation 2009-----
 	//void CreateSortedMarkedCells();
 	//void AddMarkedRange(const ScRange& rRange);
 	typedef std::vector<ScMyAddress> VEC_MYADDR;
@@ -342,7 +337,6 @@
 	sal_Bool CalcScRangeDifferenceMax(ScRange *pSrc,ScRange *pDest,int nMax,VEC_MYADDR &vecRet,int &nSize);
 	sal_Bool CalcScRangeListDifferenceMax(ScRangeList *pSrc,ScRangeList *pDest,int nMax,VEC_MYADDR &vecRet);
 	String m_strOldTabName;
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/AccessibleTableBase.hxx b/main/sc/source/ui/inc/AccessibleTableBase.hxx
index 6d66667..4afe279 100644
--- a/main/sc/source/ui/inc/AccessibleTableBase.hxx
+++ b/main/sc/source/ui/inc/AccessibleTableBase.hxx
@@ -30,9 +30,7 @@
 #include "address.hxx"
 #include <com/sun/star/accessibility/XAccessibleTable.hpp>
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleTableSelection.hpp>
-//-----IAccessibility2 Implementation 2009
 #include <cppuhelper/implbase2.hxx>
 
 class ScTabViewShell;
@@ -48,9 +46,7 @@
 
 class ScAccessibleTableBase :
 			public ScAccessibleContextBase,
-//IAccessibility2 Implementation 2009-----
 			public	 ::com::sun::star::accessibility::XAccessibleTableSelection,
-//-----IAccessibility2 Implementation 2009
 			public ScAccessibleTableBaseImpl
 {
 public:
@@ -205,7 +201,6 @@
     	getAccessibleChild(sal_Int32 nIndex)
         throw (::com::sun::star::uno::RuntimeException,
 				::com::sun::star::lang::IndexOutOfBoundsException);
-//IAccessibility2 Implementation 2009-----
 	virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
     virtual sal_Bool SAL_CALL selectColumn( sal_Int32 column ) 
@@ -214,7 +209,6 @@
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
     virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-//-----IAccessibility2 Implementation 2009
 
 protected:
     ///	Return this object's description.
diff --git a/main/sc/source/ui/inc/AccessibleText.hxx b/main/sc/source/ui/inc/AccessibleText.hxx
index f404db9..bc429ce 100644
--- a/main/sc/source/ui/inc/AccessibleText.hxx
+++ b/main/sc/source/ui/inc/AccessibleText.hxx
@@ -132,11 +132,9 @@
 class ScAccessibleEditObjectTextData : public ScAccessibleTextData
 {
 public:
-//IAccessibility2 Implementation 2009-----
 	// Solution: Add a para to indicate whether the object is cloned
 						//ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin);
 						ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin, sal_Bool isClone=sal_False);
-//-----IAccessibility2 Implementation 2009
 	virtual				~ScAccessibleEditObjectTextData();
 
 	virtual	ScAccessibleTextData* Clone() const;
@@ -159,9 +157,7 @@
     EditEngine* mpEditEngine;
     SvxEditEngineForwarder*	mpForwarder;
     Window* mpWindow;
-//IAccessibility2 Implementation 2009-----
     sal_Bool mbIsCloned;
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/condfrmt.hrc b/main/sc/source/ui/inc/condfrmt.hrc
index f3a45a0..2c498e6 100644
--- a/main/sc/source/ui/inc/condfrmt.hrc
+++ b/main/sc/source/ui/inc/condfrmt.hrc
@@ -59,11 +59,9 @@
 #define FL_SEP1             41
 #define FL_SEP2             42
 
-//IAccessibility2 Implementation 2009-----
 #define LABEL_FORMARTTING_CONDITIONS	5043
 #define LABEL_CONDITIONS 				5044
 #define LABEL_CONDITION_VALUE 			5045
-//-----IAccessibility2 Implementation 2009
 
 #define BTN_OK              31
 #define BTN_CANCEL			32
diff --git a/main/sc/source/ui/inc/content.hxx b/main/sc/source/ui/inc/content.hxx
index 9f4479d..1922102 100644
--- a/main/sc/source/ui/inc/content.hxx
+++ b/main/sc/source/ui/inc/content.hxx
@@ -34,9 +34,7 @@
 class ScDocument;
 class ScDocShell;
 class ScAreaLink;
-//IAccessibility2 Implementation 2009-----
 class SdrPage;
-//-----IAccessibility2 Implementation 2009
 
 #define SC_CONTENT_ROOT			0
 #define SC_CONTENT_TABLE		1
@@ -67,10 +65,8 @@
 	String				aHiddenName;		// URL zum Laden
 	String				aHiddenTitle;		// fuer Anzeige
 	ScDocument*			pHiddenDocument;	// temporaer
-//IAccessibility2 Implementation 2009-----
     sal_Bool                           bisInNavigatoeDlg;
 	String 				sKeyString;
-//-----IAccessibility2 Implementation 2009
 
 	sal_uInt16				pPosList[SC_CONTENT_COUNT];		// fuer die Reihenfolge
 
@@ -119,12 +115,10 @@
 
     DECL_LINK( ContentDoubleClickHdl, ScContentTree* );
 	DECL_STATIC_LINK( ScContentTree, ExecDragHdl, void* );
-//IAccessibility2 Implementation 2009-----
 public:
 	SvLBoxEntry* pTmpEntry;
 
 	bool m_bFirstPaint;
-//-----IAccessibility2 Implementation 2009
 protected:
 //	virtual sal_Bool	Drop( const DropEvent& rEvt );
 //	virtual sal_Bool	QueryDrop( DropEvent& rEvt );
@@ -138,21 +132,17 @@
 
 	virtual void	Command( const CommandEvent& rCEvt );
 	virtual void	RequestHelp( const HelpEvent& rHEvt );
-//IAccessibility2 Implementation 2009-----
 	virtual void 	InitEntry(SvLBoxEntry*,const XubString&,const Image&,const Image&, SvLBoxButtonKind);
-//-----IAccessibility2 Implementation 2009
 public:
 			ScContentTree( Window* pParent, const ResId& rResId );
 			~ScContentTree();
 
-//IAccessibility2 Implementation 2009-----
     String			getAltLongDescText( SvLBoxEntry* pEntry , sal_Bool isAltText) const;
     String  		GetEntryAltText( SvLBoxEntry* pEntry ) const;
     String  		GetEntryLongDescription( SvLBoxEntry* pEntry ) const;
 
 	void     ObjectFresh( sal_uInt16 nType,SvLBoxEntry* pEntry = NULL);
 	sal_Bool     SetNavigatorDlgFlag(sal_Bool isInNavigatoeDlg){ return bisInNavigatoeDlg=isInNavigatoeDlg;};
-//-----IAccessibility2 Implementation 2009
     virtual void    MouseButtonDown( const MouseEvent& rMEvt );
     virtual void    KeyInput( const KeyEvent& rKEvt );
 
diff --git a/main/sc/source/ui/inc/dbnamdlg.hxx b/main/sc/source/ui/inc/dbnamdlg.hxx
index fcbedfc..c7cbb65 100644
--- a/main/sc/source/ui/inc/dbnamdlg.hxx
+++ b/main/sc/source/ui/inc/dbnamdlg.hxx
@@ -100,10 +100,8 @@
 	ScDBCollection	aLocalDbCol;
 	ScRange			theCurArea;
 	List			aRemoveList;
-	//IAccessibility2 Implementation 2009-----
 	Timer		SynFocusTimer;
 	DECL_LINK( FocusToComoboxHdl, Timer* );
-	//-----IAccessibility2 Implementation 2009
 
 #ifdef _DBNAMDLG_CXX
 private:
diff --git a/main/sc/source/ui/inc/docsh.hxx b/main/sc/source/ui/inc/docsh.hxx
index dfa798e..d6904bf 100644
--- a/main/sc/source/ui/inc/docsh.hxx
+++ b/main/sc/source/ui/inc/docsh.hxx
@@ -407,12 +407,10 @@
     const ScOptSolverSave* GetSolverSaveData() const    { return pSolverSaveData; }     // may be null
     void            SetSolverSaveData( const ScOptSolverSave& rData );
 
-//IAccessibility2 Implementation 2009-----
 	virtual void setDocAccTitle( const String& rTitle ) { aDocument.setDocAccTitle( rTitle ); }
 	virtual const String getDocAccTitle() const { return aDocument.getDocAccTitle(); }
 	void setDocReadOnly( sal_Bool b){ aDocument.setDocReadOnly(b);}
 	sal_Bool getDocReadOnly() const { return aDocument.getDocReadOnly(); }
-//-----IAccessibility2 Implementation 2009
 
 	//<!--Added by PengYunQuan for Validity Cell Range Picker
 	sal_Bool		AcceptStateUpdate() const;
diff --git a/main/sc/source/ui/inc/drawview.hxx b/main/sc/source/ui/inc/drawview.hxx
index 8d3befb..9517145 100644
--- a/main/sc/source/ui/inc/drawview.hxx
+++ b/main/sc/source/ui/inc/drawview.hxx
@@ -155,11 +155,9 @@
 	SdrEndTextEditKind	ScEndTextEdit();	// ruft SetDrawTextUndo(0)
 //UNUSED2009-05 void                    CaptionTextDirection(sal_uInt16 nSlot);
     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::XTransferable > CopyToTransferable();
-//IAccessibility2 Implementation 2009-----
 	SdrObject*  GetObjectByName(const String& rName);
 	sal_Bool           GetObjectIsMarked(  SdrObject * pObject );
 	sal_Bool           SelectCurrentViewObject( const String& rName );
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/filter.hrc b/main/sc/source/ui/inc/filter.hrc
index 6626522..08e7159 100644
--- a/main/sc/source/ui/inc/filter.hrc
+++ b/main/sc/source/ui/inc/filter.hrc
@@ -76,10 +76,8 @@
 #define ED_CRITERIA_AREA	52
 #define RB_CRITERIA_AREA	53
 
-//IAccessibility2 Implementation 2009-----
 #define STR_COPY_AREA_TO 5054
 #define RID_FILTER_OPERATOR 5055
 #define RID_FILTER_FIELDNAME 5056
 #define RID_FILTER_CONDITION 5057
 #define RID_FILTER_VALUE 5058
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/inc/gridwin.hxx b/main/sc/source/ui/inc/gridwin.hxx
index cf061da..5ef61a7 100644
--- a/main/sc/source/ui/inc/gridwin.hxx
+++ b/main/sc/source/ui/inc/gridwin.hxx
@@ -239,9 +239,7 @@
 	void			ExecPageFieldSelect( SCCOL nCol, SCROW nRow, sal_Bool bHasSelection, const String& rStr );
 
 	sal_Bool			HasScenarioButton( const Point& rPosPixel, ScRange& rScenRange );
-//IAccessibility2 Implementation 2009-----
 	sal_Bool			HasScenarioRange( sal_uInt16 nCol, sal_Int32 nRow, ScRange& rScenRange ); 
-//-----IAccessibility2 Implementation 2009
 	sal_Bool			DropScroll( const Point& rMousePos );
 
 	sal_Int8		AcceptPrivateDrop( const AcceptDropEvent& rEvt );
@@ -390,9 +388,7 @@
 	void			DoInvertRect( const Rectangle& rPixel );
 
 	void			CheckNeedsRepaint();
-//IAccessibility2 Implementation 2009-----
 	virtual void SwitchView();
-//-----IAccessibility2 Implementation 2009
 
     void            UpdateDPFromFieldPopupMenu();
 
diff --git a/main/sc/source/ui/inc/preview.hxx b/main/sc/source/ui/inc/preview.hxx
index 4b63313..563c7b4 100644
--- a/main/sc/source/ui/inc/preview.hxx
+++ b/main/sc/source/ui/inc/preview.hxx
@@ -158,9 +158,7 @@
 	static void StaticInvalidate();
 
     FmFormView* GetDrawView() { return pDrawView; }
-//IAccessibility2 Implementation 2009-----
 	virtual void SwitchView();
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sc/source/ui/inc/scuitphfedit.hxx b/main/sc/source/ui/inc/scuitphfedit.hxx
index 88d0500..7e551af 100644
--- a/main/sc/source/ui/inc/scuitphfedit.hxx
+++ b/main/sc/source/ui/inc/scuitphfedit.hxx
@@ -91,9 +91,7 @@
 
 	sal_uInt16			nWhich;
 	String			aCmdArr[6];
-	//IAccessibility2 Implementation 2009-----
 	DECL_LINK( ObjectSelectHdl, ScEditWindow* );
-	//-----IAccessibility2 Implementation 2009
 
 private:
 #ifdef _TPHFEDIT_CXX
diff --git a/main/sc/source/ui/inc/tabvwsh.hxx b/main/sc/source/ui/inc/tabvwsh.hxx
index dcb8f19..1d79ecb 100644
--- a/main/sc/source/ui/inc/tabvwsh.hxx
+++ b/main/sc/source/ui/inc/tabvwsh.hxx
@@ -161,9 +161,7 @@
 	sal_Bool					bPrintSelected;				// for result of SvxPrtQryBox
 
 	sal_Bool					bReadOnly;					// um Status-Aenderungen zu erkennen
-//IAccessibility2 Implementation 2009-----	
 	sal_Bool 					bIsActive;
-//-----IAccessibility2 Implementation 2009
 	SbxObject*				pScSbxObject;
 
 //UNUSED2008-05  sal_Bool                    bChartDlgIsEdit;            // Datenbereich aendern
@@ -425,11 +423,9 @@
     bool    ExecuteRetypePassDlg(ScPasswordHash eDesiredHash);
 
     using ScTabView::ShowCursor;
-//IAccessibility2 Implementation 2009-----
 	sal_Bool IsActive(){ return bIsActive; }
 	rtl::OUString GetFormula(ScAddress& rAddress);
 	const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & GetForms() const;
-//-----IAccessibility2 Implementation 2009
 };
 
 //==================================================================
diff --git a/main/sc/source/ui/inc/tphfedit.hxx b/main/sc/source/ui/inc/tphfedit.hxx
index 2960bcc..f815f0e 100644
--- a/main/sc/source/ui/inc/tphfedit.hxx
+++ b/main/sc/source/ui/inc/tphfedit.hxx
@@ -78,9 +78,7 @@
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible();
 
 	inline ScHeaderEditEngine*  GetEditEngine() const {return pEdEngine;}
-	//IAccessibility2 Implementation 2009-----
 	void 			SetObjectSelectHdl( const Link& aLink){ aObjectSelectLink = aLink; };
-	//-----IAccessibility2 Implementation 2009
 protected:
 	virtual void	Paint( const Rectangle& rRec );
 	virtual void	MouseMove( const MouseEvent& rMEvt );
@@ -100,9 +98,7 @@
     com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible > xAcc;
     ScAccessibleEditObject* pAcc;
 
-	//IAccessibility2 Implementation 2009-----
     Link				aObjectSelectLink;
-	//-----IAccessibility2 Implementation 2009
 
 };
 
diff --git a/main/sc/source/ui/inc/viewfunc.hxx b/main/sc/source/ui/inc/viewfunc.hxx
index 507706d..a093f16 100644
--- a/main/sc/source/ui/inc/viewfunc.hxx
+++ b/main/sc/source/ui/inc/viewfunc.hxx
@@ -251,11 +251,9 @@
 	ScAutoFormatData* CreateAutoFormatData();
 	void			AutoFormat( sal_uInt16 nFormatNo, sal_Bool bRecord = sal_True );
 
-//IAccessibility2 Implementation 2009-----
 //	void			SearchAndReplace( const SvxSearchItem* pSearchItem,
 	sal_Bool			SearchAndReplace( const SvxSearchItem* pSearchItem,
 										sal_Bool bAddUndo, sal_Bool bIsApi );
-//-----IAccessibility2 Implementation 2009
 
 	void			Solve( const ScSolveParam& rParam );
 	void			TabOp( const ScTabOpParam& rParam,  sal_Bool bRecord = sal_True );
diff --git a/main/sc/source/ui/miscdlgs/highred.cxx b/main/sc/source/ui/miscdlgs/highred.cxx
index 37f67d3..16148be 100644
--- a/main/sc/source/ui/miscdlgs/highred.cxx
+++ b/main/sc/source/ui/miscdlgs/highred.cxx
@@ -258,9 +258,7 @@
 		aEdAssign.Show();
 		aRbAssign.Show();
 		aEdAssign.SetText(aFilterCtr.GetRange());
-		//IAccessibility2 Implementation 2009-----
 		aEdAssign.GrabFocus();
-		//-----IAccessibility2 Implementation 2009
 		ScAnyRefDlg::RefInputStart(&aEdAssign,&aRbAssign);
 	}
 	return 0;
diff --git a/main/sc/source/ui/miscdlgs/solveroptions.cxx b/main/sc/source/ui/miscdlgs/solveroptions.cxx
index bc56652..c4aab79 100644
--- a/main/sc/source/ui/miscdlgs/solveroptions.cxx
+++ b/main/sc/source/ui/miscdlgs/solveroptions.cxx
@@ -84,15 +84,12 @@
 
     void      SetDoubleValue( double fNew ) { mbIsDouble = true; mfDoubleValue = fNew; }
     void      SetIntValue( sal_Int32 nNew ) { mbIsDouble = false; mnIntValue = nNew; }
-	//IAccessibility2 Implementation 2009-----
 // MT: Commented out SV_ITEM_ID_EXTENDRLBOXSTRING and GetExtendText() in svlbitem.hxx - needed?
 //	virtual USHORT IsA() {return SV_ITEM_ID_EXTENDRLBOXSTRING;}
 //	virtual XubString GetExtendText() const;
-	//-----IAccessibility2 Implementation 2009
     virtual void Paint( const Point& rPos, SvLBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry );
 };
 
-//IAccessibility2 Implementation 2009-----
 // MT: Commented out SV_ITEM_ID_EXTENDRLBOXSTRING and GetExtendText() in svlbitem.hxx - needed?
 /*
 XubString ScSolverOptionsString::GetExtendText() const
@@ -110,7 +107,6 @@
 	return aNormalStr;
 }
 */
-//-----IAccessibility2 Implementation 2009
 
 void ScSolverOptionsString::Paint( const Point& rPos, SvLBox& rDev, sal_uInt16, SvLBoxEntry* /* pEntry */ )
 {
diff --git a/main/sc/source/ui/navipi/content.cxx b/main/sc/source/ui/navipi/content.cxx
index 9eca3f2..46133bc 100644
--- a/main/sc/source/ui/navipi/content.cxx
+++ b/main/sc/source/ui/navipi/content.cxx
@@ -64,10 +64,8 @@
 #include "navicfg.hxx"
 #include "navsett.hxx"
 #include "postit.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "tabvwsh.hxx"
 #include "drawview.hxx"
-//-----IAccessibility2 Implementation 2009
 #include "clipparam.hxx"
 
 using namespace com::sun::star;
@@ -131,9 +129,7 @@
 	nRootType		( SC_CONTENT_ROOT ),
 	bHiddenDoc		( sal_False ),
 	pHiddenDocument	( NULL ),
-//IAccessibility2 Implementation 2009-----
     bisInNavigatoeDlg  ( sal_False )
-//-----IAccessibility2 Implementation 2009
 {
 	sal_uInt16 i;
 	for (i=0; i<SC_CONTENT_COUNT; i++)
@@ -149,10 +145,8 @@
 
     SetDoubleClickHdl( LINK( this, ScContentTree, ContentDoubleClickHdl ) );
 
-	//IAccessibility2 Implementation 2009-----
 	pTmpEntry= NULL;
 	m_bFirstPaint=true;
-	//-----IAccessibility2 Implementation 2009
 
     SetStyle( GetStyle() | WB_QUICK_SEARCH );
 }
@@ -160,7 +154,6 @@
 ScContentTree::~ScContentTree()
 {
 }
-//IAccessibility2 Implementation 2009-----
 // helper function for 	GetEntryAltText and GetEntryLongDescription
 String ScContentTree::getAltLongDescText( SvLBoxEntry* pEntry , sal_Bool isAltText) const
 {
@@ -222,7 +215,6 @@
 {
 	return getAltLongDescText( pEntry, sal_False);
 }
-//-----IAccessibility2 Implementation 2009
 
 void ScContentTree::InitRoot( sal_uInt16 nType )
 {
@@ -250,7 +242,6 @@
 
 void ScContentTree::ClearAll()
 {
-//IAccessibility2 Implementation 2009-----
     //There are one method in Control::SetUpdateMode(), and one override method SvTreeListBox::SetUpdateMode(). Here although 
     //SvTreeListBox::SetUpdateMode() is called in refresh method, it only call SvTreeListBox::SetUpdateMode(), not Control::SetUpdateMode(). 
     //In SvTreeList::Clear(), Broadcast( LISTACTION_CLEARED ) will be called and finally, it will be trapped into the event yield() loop. And 
@@ -260,7 +251,6 @@
     Control::SetUpdateMode(sal_False);
 	Clear();
     Control::SetUpdateMode(bOldUpdate);
-//-----IAccessibility2 Implementation 2009
 	for (sal_uInt16 i=1; i<SC_CONTENT_COUNT; i++)
 		InitRoot(i);
 }
@@ -488,7 +478,6 @@
             break;
 		}
 	}
-//IAccessibility2 Implementation 2009-----
 	//Solution: Make KEY_SPACE has same function as DoubleClick 
 	if ( bisInNavigatoeDlg )
 	{
@@ -550,10 +539,8 @@
 		   }
 	   }
     //StoreSettings();
-    //-----IAccessibility2 Implementation 2009
 
     if( !bUsed )
-    //IAccessibility2 Implementation 2009-----
 	{
 		if(aCode.GetCode() == KEY_F5 )
 		{
@@ -566,7 +553,6 @@
 			StoreSettings();
 		}
 	}
-    //-----IAccessibility2 Implementation 2009
 }
 
 //sal_Bool __EXPORT ScContentTree::Drop( const DropEvent& rEvt )
@@ -767,7 +753,6 @@
 	return NULL;
 }
 
-//IAccessibility2 Implementation 2009-----
 //Solution: move along and draw "*" sign .
 void ScContentTree::ObjectFresh( sal_uInt16 nType,SvLBoxEntry* pEntry )
 {
@@ -816,7 +801,6 @@
 		}
       	}	
 }
-//-----IAccessibility2 Implementation 2009
 void ScContentTree::Refresh( sal_uInt16 nType )
 {
 	if ( bHiddenDoc && !pHiddenDocument )
@@ -1004,8 +988,6 @@
 						String aName = ScDrawLayer::GetVisibleName( pObject );
 						if (aName.Len())
 						{
-							//IAccessibility2 Implementation 2009-----
-							//InsertContent( nType, aName );
 							if( bisInNavigatoeDlg )
 							{
 								if (nType >= SC_CONTENT_COUNT)
@@ -1042,7 +1024,6 @@
 							}
 						}
 					}
-					//-----IAccessibility2 Implementation 2009
 					pObject = aIter.Next();
 				}
 			}
@@ -1762,7 +1743,6 @@
     }
 }
 
-//IAccessibility2 Implementation 2009-----
 class ScContentLBoxString : public SvLBoxString
 {
 public:
@@ -1805,7 +1785,6 @@
 	*/
 		SvLBoxString::Paint( rPos, rDev, nFlags, pEntry);
 }
-//-----IAccessibility2 Implementation 2009
 //
 //------------------------------------------------------------------------
 //
diff --git a/main/sc/source/ui/navipi/navipi.cxx b/main/sc/source/ui/navipi/navipi.cxx
index a31b2a3..9a3ca74 100644
--- a/main/sc/source/ui/navipi/navipi.cxx
+++ b/main/sc/source/ui/navipi/navipi.cxx
@@ -785,9 +785,7 @@
         aTbxCmd.Select(IID_ZOOMOUT);
         aTbxCmd.RemoveItem(aTbxCmd.GetItemPos(IID_ZOOMOUT));
     }
-	//IAccessibility2 Implementation 2009-----
 	aLbEntries.SetNavigatorDlgFlag(sal_True);
-	//-----IAccessibility2 Implementation 2009
 }
 
 //------------------------------------------------------------------------
@@ -986,13 +984,11 @@
 				case FID_ANYDATACHANGED:
 					aContentTimer.Start();		// Notizen nicht sofort suchen
 					break;
-				//IAccessibility2 Implementation 2009-----
 				case FID_KILLEDITVIEW:
 					aLbEntries.ObjectFresh( SC_CONTENT_OLEOBJECT );
 					aLbEntries.ObjectFresh( SC_CONTENT_DRAWING );
 					aLbEntries.ObjectFresh( SC_CONTENT_GRAPHIC );
 				      break;
-				//-----IAccessibility2 Implementation 2009
 				default:
 					break;
 			}
diff --git a/main/sc/source/ui/pagedlg/scuitphfedit.cxx b/main/sc/source/ui/pagedlg/scuitphfedit.cxx
index 0448ed8..198f46d 100644
--- a/main/sc/source/ui/pagedlg/scuitphfedit.cxx
+++ b/main/sc/source/ui/pagedlg/scuitphfedit.cxx
@@ -166,7 +166,6 @@
 	aWndCenter. SetFont( aPatAttr );
 	aWndRight.	SetFont( aPatAttr );
 
-	//IAccessibility2 Implementation 2009-----
 	aWndLeft.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
 	aWndCenter.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
 	aWndRight.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
@@ -177,7 +176,6 @@
 	aBtnLastPage.SetAccessibleRelationMemberOf( &maFtCustomHF );
 	aBtnDate.SetAccessibleRelationMemberOf( &maFtCustomHF );
 	aBtnTime.SetAccessibleRelationMemberOf( &maFtCustomHF );	
-	//-----IAccessibility2 Implementation 2009
 	FillCmdArr();
 
 	aWndLeft.GrabFocus();
@@ -186,14 +184,12 @@
 
 	FreeResource();
 }
-	//IAccessibility2 Implementation 2009-----
     IMPL_LINK( ScHFEditPage, ObjectSelectHdl, ScEditWindow*, pEdit )
 	{
 		(void)pEdit;
 	    aBtnText.GrabFocus();
 	    return NULL;	
 	}
-	//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
diff --git a/main/sc/source/ui/pagedlg/tphfedit.cxx b/main/sc/source/ui/pagedlg/tphfedit.cxx
index 86c07b4..9d7ab8e 100644
--- a/main/sc/source/ui/pagedlg/tphfedit.cxx
+++ b/main/sc/source/ui/pagedlg/tphfedit.cxx
@@ -553,10 +553,8 @@
 	Control::Paint(	rRec );
 
 	pEdView->Paint( rRec );
-	//IAccessibility2 Implementation 2009-----
 	if( HasFocus() )
 		pEdView->ShowCursor(sal_True,sal_True);
-	//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
@@ -598,14 +596,12 @@
 	{
 		Control::KeyInput( rKEvt );
 	}
-	//IAccessibility2 Implementation 2009-----
 	else if ( !rKEvt.GetKeyCode().IsMod1() && !rKEvt.GetKeyCode().IsShift() &&
 		    	rKEvt.GetKeyCode().IsMod2() && rKEvt.GetKeyCode().GetCode() == KEY_DOWN )
 	{
 		if (aObjectSelectLink.IsSet() )			
 			aObjectSelectLink.Call(this);
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
@@ -619,9 +615,7 @@
 
 void __EXPORT ScEditWindow::GetFocus()
 {
-	//IAccessibility2 Implementation 2009-----
 	pEdView->ShowCursor(sal_True,sal_True);
-	//-----IAccessibility2 Implementation 2009
 	pActiveEdWnd = this;
 
     ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xTemp = xAcc;
diff --git a/main/sc/source/ui/view/drawview.cxx b/main/sc/source/ui/view/drawview.cxx
index 3640ccf..340f5fe 100644
--- a/main/sc/source/ui/view/drawview.cxx
+++ b/main/sc/source/ui/view/drawview.cxx
@@ -689,7 +689,6 @@
 #pragma optimize ( "", on )
 #endif
 
-//IAccessibility2 Implementation 2009-----
 SdrObject* ScDrawView::GetObjectByName(const String& rName)
 {
 	SfxObjectShell*	pShell = pDoc->GetDocumentShell();
@@ -772,7 +771,6 @@
 	}
 	return ( bUnMark );
 }
-//-----IAccessibility2 Implementation 2009
 sal_Bool ScDrawView::SelectObject( const String& rName )
 {
 	UnmarkAll();
@@ -834,7 +832,6 @@
 	return ( pFound != NULL );
 }
 
-//IAccessibility2 Implementation 2009-----
 //Solution: If  object  is marked , return true , else return false . 
 //==================================================
 sal_Bool ScDrawView::GetObjectIsMarked(  SdrObject* pObject  )
@@ -846,7 +843,6 @@
 	}
 	return  bisMarked;
 }
-//-----IAccessibility2 Implementation 2009
 //UNUSED2008-05  String ScDrawView::GetSelectedChartName() const
 //UNUSED2008-05  {
 //UNUSED2008-05      //  used for modifying a chart's data area - PersistName must always be used
diff --git a/main/sc/source/ui/view/gridwin.cxx b/main/sc/source/ui/view/gridwin.cxx
index 9ee5f1f..07ff754 100644
--- a/main/sc/source/ui/view/gridwin.cxx
+++ b/main/sc/source/ui/view/gridwin.cxx
@@ -866,7 +866,6 @@
 	CaptureMouse();
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool ScGridWindow::HasScenarioRange( sal_uInt16 nCol, sal_Int32 nRow, ScRange& rScenRange )
 {
 	ScDocument* pDoc = pViewData->GetDocument();
@@ -904,7 +903,6 @@
 	}
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 void ScGridWindow::DoAutoFilterMenue( SCCOL nCol, SCROW nRow, sal_Bool bDataSelect )
 {
 	delete pFilterBox;
@@ -2273,9 +2271,7 @@
 
 			pViewData->GetView()->InvalidateAttribs();
 		}
-//IAccessibility2 Implementation 2009-----
 		pViewData->GetViewShell()->SelectionChanged();
-//-----IAccessibility2 Implementation 2009
 		return;
 	}
 }
@@ -3110,9 +3106,6 @@
         if( !rKeyCode.GetModifier() && (rKeyCode.GetCode() == KEY_F2) )
         {
             SC_MOD()->EndReference();
-//IAccessibility2 Implementation 2009-----
-            //return;
-//-----IAccessibility2 Implementation 2009
         }
         else if( pViewData->GetViewShell()->MoveCursorKeyInput( rKEvt ) )
         {
@@ -3120,14 +3113,9 @@
                 pViewData->GetRefStartX(), pViewData->GetRefStartY(), pViewData->GetRefStartZ(),
                 pViewData->GetRefEndX(), pViewData->GetRefEndY(), pViewData->GetRefEndZ() );
             SC_MOD()->SetReference( aRef, pViewData->GetDocument() );
-//IAccessibility2 Implementation 2009-----
-            //return;
-//-----IAccessibility2 Implementation 2009
         }
-//IAccessibility2 Implementation 2009-----
 		pViewData->GetViewShell()->SelectionChanged();
 		return ;
-//-----IAccessibility2 Implementation 2009
     }
 	// wenn semi-Modeless-SfxChildWindow-Dialog oben, keine KeyInputs:
     else if( !pViewData->IsAnyFillMode() )
diff --git a/main/sc/source/ui/view/gridwin3.cxx b/main/sc/source/ui/view/gridwin3.cxx
index e287a9d..d5e4a81 100644
--- a/main/sc/source/ui/view/gridwin3.cxx
+++ b/main/sc/source/ui/view/gridwin3.cxx
@@ -179,10 +179,8 @@
 					if ( !bOldMarked &&
 						rKEvt.GetKeyCode().GetCode() == KEY_DELETE )
 						bUsed = sal_False;					// nichts geloescht
-//IAccessibility2 Implementation 2009-----
 					if(bOldMarked)
 						GetFocus();					
-//-----IAccessibility2 Implementation 2009
 				}
 			if (!bLeaveDraw)
 				UpdateStatusPosSize();		// #108137# for moving/resizing etc. by keyboard
diff --git a/main/sc/source/ui/view/gridwin5.cxx b/main/sc/source/ui/view/gridwin5.cxx
index 102ce06..6d7a014 100644
--- a/main/sc/source/ui/view/gridwin5.cxx
+++ b/main/sc/source/ui/view/gridwin5.cxx
@@ -58,9 +58,7 @@
 #include "tabvwsh.hxx"
 #include "userdat.hxx"
 #include "postit.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <vcl/svapp.hxx>
-//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
@@ -426,29 +424,20 @@
 com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
 	ScGridWindow::CreateAccessible()
 {
-//IAccessibility2 Implementation 2009-----
 	com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc= GetAccessible(sal_False);
 	if (xAcc.is())
 	{
 		return xAcc;
 	}
-//-----IAccessibility2 Implementation 2009
 	ScAccessibleDocument* pAccessibleDocument =
 		new ScAccessibleDocument(GetAccessibleParentWindow()->GetAccessible(),
 			pViewData->GetViewShell(), eWhich);
-//IAccessibility2 Implementation 2009-----
-	//com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessible > xAccessible = pAccessibleDocument;
 	xAcc = pAccessibleDocument;
 	SetAccessible(xAcc);
-//-----IAccessibility2 Implementation 2009
 
 	pAccessibleDocument->Init();
-//IAccessibility2 Implementation 2009-----
-	//return xAccessible;
 	return xAcc;
-//-----IAccessibility2 Implementation 2009
 }
-//IAccessibility2 Implementation 2009-----
 // MT: Removed Windows::SwitchView() introduced with IA2 CWS.
 // There are other notifications for this when the active view has chnaged, so please update the code to use that event mechanism
 void ScGridWindow::SwitchView()
@@ -463,5 +452,4 @@
 		pAccDoc->SwitchViewFireFocus();
 	}		
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sc/source/ui/view/output.cxx b/main/sc/source/ui/view/output.cxx
index 3149b86..5227c8c 100644
--- a/main/sc/source/ui/view/output.cxx
+++ b/main/sc/source/ui/view/output.cxx
@@ -77,31 +77,6 @@
 					COL_GREEN,			COL_RED,			COL_BLUE,
 					COL_BROWN,			COL_MAGENTA,		COL_CYAN };
 
-//	Hilfsklasse, fuer die Farbzuordnung,
-//	um nicht mehrfach hintereinander denselben User aus der Liste zu suchen
-
-//IAccessibility2 Implementation 2009-----
-//Move this class declare to Chgtrack.hxx
-/*
-class ScActionColorChanger
-{
-private:
-	const ScAppOptions&		rOpt;
-	const ScStrCollection&	rUsers;
-	String					aLastUserName;
-	sal_uInt16					nLastUserIndex;
-	ColorData				nColor;
-
-public:
-				ScActionColorChanger( const ScChangeTrack& rTrack );
-				~ScActionColorChanger() {}
-
-	void		Update( const ScChangeAction& rAction );
-	ColorData	GetColor() const	{ return nColor; }
-};
-*/
-//-----IAccessibility2 Implementation 2009
-
 //------------------------------------------------------------------
 
 ScActionColorChanger::ScActionColorChanger( const ScChangeTrack& rTrack ) :
diff --git a/main/sc/source/ui/view/preview.cxx b/main/sc/source/ui/view/preview.cxx
index fa079bc..244da61 100644
--- a/main/sc/source/ui/view/preview.cxx
+++ b/main/sc/source/ui/view/preview.cxx
@@ -1474,27 +1474,18 @@
 
 com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> ScPreview::CreateAccessible()
 {
-//IAccessibility2 Implementation 2009-----
 	com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> xAcc= GetAccessible(sal_False);
 	if (xAcc.is())
 	{
 		return xAcc;
 	}
-//-----IAccessibility2 Implementation 2009
 	ScAccessibleDocumentPagePreview* pAccessible =
 		new ScAccessibleDocumentPagePreview( GetAccessibleParentWindow()->GetAccessible(), pViewShell );
-//IAccessibility2 Implementation 2009-----
-	//com::sun::star::uno::Reference < com::sun::star::accessibility::XAccessible > xAccessible = pAccessible;
 	xAcc = pAccessible;
 	SetAccessible(xAcc);
-//-----IAccessibility2 Implementation 2009
 	pAccessible->Init();
-//IAccessibility2 Implementation 2009-----
-	//return xAccessible;
 	return xAcc;
-//-----IAccessibility2 Implementation 2009
 }
-//IAccessibility2 Implementation 2009-----
 // MT: Removed Windows::SwitchView() introduced with IA2 CWS.
 // There are other notifications for this when the active view has chnaged, so please update the code to use that event mechanism
 void ScPreview::SwitchView()
@@ -1509,7 +1500,6 @@
 		pAccDoc->SwitchViewFireFocus();
 	}		
 }
-//-----IAccessibility2 Implementation 2009
 //Issue51656 Add resizeable margin on page preview from maoyg
 void ScPreview::DragMove( long nDragMovePos, sal_uInt16 nFlags )
 {
diff --git a/main/sc/source/ui/view/select.cxx b/main/sc/source/ui/view/select.cxx
index bceb17d..4746c26 100644
--- a/main/sc/source/ui/view/select.cxx
+++ b/main/sc/source/ui/view/select.cxx
@@ -369,9 +369,7 @@
 			}
 
 			pView->UpdateRef( nPosX, nPosY, pViewData->GetTabNo() );
-//IAccessibility2 Implementation 2009-----
 			pView->SelectionChanged();
-//-----IAccessibility2 Implementation 2009
 		}
 	}
 	else if (pViewData->IsFillMode() ||
diff --git a/main/sc/source/ui/view/tabview2.cxx b/main/sc/source/ui/view/tabview2.cxx
index 4526fa0..38b1b14 100644
--- a/main/sc/source/ui/view/tabview2.cxx
+++ b/main/sc/source/ui/view/tabview2.cxx
@@ -129,10 +129,8 @@
 		SCTAB nTab = aViewData.GetTabNo();
 
 		//	Teil von Markierung aufheben?
-//IAccessibility2 Implementation 2009-----
 		if (bForceNeg)
 			bBlockNeg = sal_True;
-//-----IAccessibility2 Implementation 2009
 		else if (bTestNeg)
 		{
 			if ( bCols )
diff --git a/main/sc/source/ui/view/tabvwsh.cxx b/main/sc/source/ui/view/tabvwsh.cxx
index 0ecc7b8..c25246b 100644
--- a/main/sc/source/ui/view/tabvwsh.cxx
+++ b/main/sc/source/ui/view/tabvwsh.cxx
@@ -41,10 +41,8 @@
 #include <sfx2/sidebar/SidebarChildWindow.hxx>
 #include <avmedia/mediaplayer.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include "cell.hxx"
 #include "docoptio.hxx"
-//-----IAccessibility2 Implementation 2009
 
 #include "tabvwsh.hxx"
 #include "docsh.hxx"
@@ -112,7 +110,6 @@
     return 0;
 }
 
-//IAccessibility2 Implementation 2009-----
 rtl::OUString ScTabViewShell::GetFormula(ScAddress& rAddress)
 {
 	String sFormula;
@@ -124,7 +121,6 @@
 	}
 	return sFormula;
 }
-//-----IAccessibility2 Implementation 2009
 
 
 
diff --git a/main/sc/source/ui/view/tabvwsh4.cxx b/main/sc/source/ui/view/tabvwsh4.cxx
index 098af63..b78c6a4 100644
--- a/main/sc/source/ui/view/tabvwsh4.cxx
+++ b/main/sc/source/ui/view/tabvwsh4.cxx
@@ -93,9 +93,7 @@
 #include "sc.hrc" //CHINA001
 #include "scabstdlg.hxx" //CHINA001
 #include "externalrefmgr.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <svx/fmpage.hxx>
-//-----IAccessibility2 Implementation 2009
 
 void ActivateOlk( ScViewData* pViewData );
 void DeActivateOlk( ScViewData* pViewData );
@@ -115,9 +113,7 @@
 void __EXPORT ScTabViewShell::Activate(sal_Bool bMDI)
 {
 	SfxViewShell::Activate(bMDI);
-//IAccessibility2 Implementation 2009-----
 	bIsActive = sal_True;
-//-----IAccessibility2 Implementation 2009
 	//	hier kein GrabFocus, sonst gibt's Probleme wenn etwas inplace editiert wird!
 
 	if ( bMDI )
@@ -247,9 +243,7 @@
 	}
 
 	SfxViewShell::Deactivate(bMDI);
-//IAccessibility2 Implementation 2009-----
 	bIsActive = sal_False;
-//-----IAccessibility2 Implementation 2009
 	ScInputHandler* pHdl = SC_MOD()->GetInputHdl(this);
 
 	if( bMDI )
@@ -1488,7 +1482,6 @@
 		}
 	}
 
-//IAccessibility2 Implementation 2009-----
 	// use Ctrl+Alt+Shift+arrow keys to move the cursor in cells 
 	// while keeping the last selection
 	if ( !bUsed && bAlt && bControl && bShift)
@@ -1533,7 +1526,6 @@
 			bUsed = sal_True;
 		}
 	}
-//-----IAccessibility2 Implementation 2009
 	if (bHideCursor)
 		ShowAllCursors();
 
@@ -1609,9 +1601,7 @@
 	ScDocument* pDoc = pDocSh->GetDocument();
 
 	bReadOnly = pDocSh->IsReadOnly();
-//IAccessibility2 Implementation 2009-----
 	bIsActive = sal_False;
-//-----IAccessibility2 Implementation 2009
 
 	SetName( String::CreateFromAscii(RTL_CONSTASCII_STRINGPARAM("View")) );	// fuer SBX
 	Color aColBlack( COL_BLACK );
@@ -2036,7 +2026,6 @@
 
 
 
-//IAccessibility2 Implementation 2009-----
 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & ScTabViewShell::GetForms() const
 {
 	if( !pFormShell || !pFormShell->GetCurPage() ){
@@ -2045,4 +2034,3 @@
 	}
 	return pFormShell->GetCurPage()->GetForms();
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sc/source/ui/view/tabvwshe.cxx b/main/sc/source/ui/view/tabvwshe.cxx
index 1e86709..9ac56df 100644
--- a/main/sc/source/ui/view/tabvwshe.cxx
+++ b/main/sc/source/ui/view/tabvwshe.cxx
@@ -48,9 +48,7 @@
 #include "editsh.hxx"
 #include "dociter.hxx"
 #include "inputhdl.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <svx/srchdlg.hxx>
-//-----IAccessibility2 Implementation 2009
 #include "document.hxx"
 
 //==================================================================
@@ -257,7 +255,6 @@
 					const SvxSearchItem* pSearchItem = (const SvxSearchItem*) pItem;
 
 					ScGlobal::SetSearchItem( *pSearchItem );
-					//IAccessibility2 Implementation 2009-----
 					//SearchAndReplace( pSearchItem, sal_True, rReq.IsAPI() );
 					sal_Bool bSuccess = SearchAndReplace( pSearchItem, sal_True, rReq.IsAPI() );
 					if ( Application::IsAccessibilityEnabled() )
@@ -279,7 +276,6 @@
 							}
 						}
 					}
-					//-----IAccessibility2 Implementation 2009
 					rReq.Done();
 				}
 			}
@@ -331,7 +327,6 @@
 							rReq.IsAPI() ? SFX_CALLMODE_API|SFX_CALLMODE_SYNCHRON :
 											SFX_CALLMODE_STANDARD,
 							&aSearchItem, 0L );
-					//IAccessibility2 Implementation 2009-----
 					if ( Application::IsAccessibilityEnabled() )
 					{
 						SvxSearchDialog* pSearchDlg = 
@@ -351,7 +346,6 @@
 							}
 						}	
 					}
-					//-----IAccessibility2 Implementation 2009
 				}
 				else
 				{
diff --git a/main/sc/source/ui/view/viewfun2.cxx b/main/sc/source/ui/view/viewfun2.cxx
index aaa4a2a..98e1558 100644
--- a/main/sc/source/ui/view/viewfun2.cxx
+++ b/main/sc/source/ui/view/viewfun2.cxx
@@ -1616,11 +1616,8 @@
 //----------------------------------------------------------------------------
 //	Suchen & Ersetzen
 
-//IAccessibility2 Implementation 2009-----
-//void ScViewFunc::SearchAndReplace( const SvxSearchItem* pSearchItem,
 sal_Bool ScViewFunc::SearchAndReplace( const SvxSearchItem* pSearchItem,
 										sal_Bool bAddUndo, sal_Bool bIsApi )
-//-----IAccessibility2 Implementation 2009
 {
 	ScDocShell* pDocSh = GetViewData()->GetDocShell();
 	ScDocument* pDoc = pDocSh->GetDocument();
@@ -1672,10 +1669,7 @@
 				if ( pOldSelectedTables )
 					delete [] pOldSelectedTables;
 				ErrorMessage(STR_PROTECTIONERR);
-				//IAccessibility2 Implementation 2009-----
-				//return;
 				return sal_False;
-				//-----IAccessibility2 Implementation 2009
 			}
 		}
 	}
@@ -1849,9 +1843,7 @@
 
 	delete pUndoDoc;			// loeschen wenn nicht benutzt
 	delete pUndoMark;			// kann immer geloescht werden
-//IAccessibility2 Implementation 2009-----
 	return bFound;
-//-----IAccessibility2 Implementation 2009
 }
 
 
diff --git a/main/scaddins/source/analysis/analysis.cxx b/main/scaddins/source/analysis/analysis.cxx
index ebc08fa..fbe3ed5 100644
--- a/main/scaddins/source/analysis/analysis.cxx
+++ b/main/scaddins/source/analysis/analysis.cxx
@@ -158,8 +158,7 @@
 		delete pResMgr;
 
 	OString				aModName( "analysis" );
-	pResMgr = ResMgr::CreateResMgr( ( const sal_Char* ) aModName,
-										aFuncLoc );
+	pResMgr = ResMgr::CreateResMgr( aModName.getStr(), aFuncLoc );
 
 	if( pFD )
 		delete pFD;
diff --git a/main/scaddins/source/analysis/analysishelper.cxx b/main/scaddins/source/analysis/analysishelper.cxx
index c72886e..8c840e5 100644
--- a/main/scaddins/source/analysis/analysishelper.cxx
+++ b/main/scaddins/source/analysis/analysishelper.cxx
@@ -1844,7 +1844,7 @@
 {
     rCompl.c = '\0';    // do not force a symbol, if only real part present
 
-	const sal_Unicode*		pStr = ( const sal_Unicode * ) rStr;
+	const sal_Unicode* pStr = rStr.getStr();
 
 	if( IsImagUnit( *pStr ) && rStr.getLength() == 1)
 	{
diff --git a/main/scaddins/source/datefunc/datefunc.cxx b/main/scaddins/source/datefunc/datefunc.cxx
index 405dd10..a6b713a 100644
--- a/main/scaddins/source/datefunc/datefunc.cxx
+++ b/main/scaddins/source/datefunc/datefunc.cxx
@@ -329,8 +329,7 @@
         delete pResMgr;
 
     OString aModName( "date" );
-    pResMgr = ResMgr::CreateResMgr( (const sal_Char*) aModName,
-                                        aFuncLoc );
+    pResMgr = ResMgr::CreateResMgr( aModName.getStr(), aFuncLoc );
 
     if( pFuncDataList )
         delete pFuncDataList;
diff --git a/main/scp2/source/ooo/registryitem_ooo.scp b/main/scp2/source/ooo/registryitem_ooo.scp
index b36c6b9..67c2a49 100644
--- a/main/scp2/source/ooo/registryitem_ooo.scp
+++ b/main/scp2/source/ooo/registryitem_ooo.scp
@@ -325,78 +325,6 @@
 	Styles = (ALWAYS_REQUIRED);
 End
 
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Productcode_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%PRODUCTCODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Upgradecode_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%UPGRADECODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\Basis\%OOOBASEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (ALWAYS_REQUIRED,LAYER_REGISTRY,USE_OOOBASEVERSION);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Layer_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\%PRODUCTNAME\%BRANDPACKAGEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Productcode_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%PRODUCTCODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Upgradecode_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%UPGRADECODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\URE\%URELAYERVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (ALWAYS_REQUIRED,LAYER_REGISTRY,USE_URELAYERVERSION);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Layer_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\%PRODUCTNAME\%BRANDPACKAGEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (ALWAYS_REQUIRED);
-//End
-
 RegistryItem gid_Regitem_Sog
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     Subkey = ".sog";
diff --git a/main/sd/inc/drawdoc.hxx b/main/sd/inc/drawdoc.hxx
index 7316251..1df9e43 100644
--- a/main/sd/inc/drawdoc.hxx
+++ b/main/sd/inc/drawdoc.hxx
@@ -157,7 +157,6 @@
 class SdDrawDocument : public FmFormModel
 {
 private:
-//IAccessibility2 Implementation 2009-----
 	String msDocAccTitle;
 public:
 	virtual void setDocAccTitle( const String& rTitle ) { msDocAccTitle = rTitle; }
@@ -168,7 +167,6 @@
 	virtual void setDocReadOnly( sal_Bool b){ bReadOnly = b; }
 	virtual sal_Bool getDocReadOnly() const { return bReadOnly; }
 private:
-//IAccessibility2 Implementation 2009-----
 	::sd::Outliner*		mpOutliner;		    // local outliner for outline mode
 	::sd::Outliner*		mpInternalOutliner;  // internal outliner for creation of text objects
 	Timer*			    mpWorkStartupTimer;
@@ -683,9 +681,7 @@
 	// #109538#
 	virtual void PageListChanged();
 	virtual void MasterPageListChanged();
-//IAccessibility2 Implementation 2009-----
 	virtual ImageMap* GetImageMapForObject(SdrObject* pObj);
-//-----IAccessibility2 Implementation 2009
 };
 
 namespace sd
diff --git a/main/sd/inc/glob.hxx b/main/sd/inc/glob.hxx
index 56aa0d2..9a3f73b 100644
--- a/main/sd/inc/glob.hxx
+++ b/main/sd/inc/glob.hxx
@@ -38,9 +38,7 @@
 #define SD_IF_SDDRAWDOCSHELL            SFX_INTERFACE_SD_START + 1
 #define SD_IF_SDVIEWSHELL               SFX_INTERFACE_SD_START + 2
 #define SD_IF_SDDRAWVIEWSHELL           SFX_INTERFACE_SD_START + 3
-//IAccessibility2 Implementation 2009-----
 #define SD_IF_SDSLIDEVIEWSHELL          SFX_INTERFACE_SD_START + 4
-//-----IAccessibility2 Implementation 2009
 #define SD_IF_SDOUTLINEVIEWSHELL        SFX_INTERFACE_SD_START + 5
 #define SD_IF_SDDRAWSTDOBJECTBAR        SFX_INTERFACE_SD_START + 6
 #define SD_IF_SDDRAWTEXTOBJECTBAR       SFX_INTERFACE_SD_START + 7
diff --git a/main/sd/source/core/drawdoc2.cxx b/main/sd/source/core/drawdoc2.cxx
index cac2e7a..9ab631a 100644
--- a/main/sd/source/core/drawdoc2.cxx
+++ b/main/sd/source/core/drawdoc2.cxx
@@ -1198,7 +1198,6 @@
 	return pIMapObj;
 }
 
-//IAccessibility2 Implementation 2009-----
 ImageMap* SdDrawDocument::GetImageMapForObject(SdrObject* pObj)
 {
 	SdIMapInfo* pIMapInfo = GetIMapInfo( pObj );
@@ -1208,7 +1207,6 @@
 	}
 	return NULL;
 }
-//-----IAccessibility2 Implementation 2009
 /** this method enforces that the masterpages are in the currect order,
 	that is at position 1 is a PK_STANDARD masterpage followed by a
 	PK_NOTES masterpage and so on. #
diff --git a/main/sd/source/filter/eppt/epptso.cxx b/main/sd/source/filter/eppt/epptso.cxx
index 64a7769..8a9f207 100644
--- a/main/sd/source/filter/eppt/epptso.cxx
+++ b/main/sd/source/filter/eppt/epptso.cxx
@@ -4938,7 +4938,7 @@
 								mpPptEscherEx->AddAtom( 4, EPP_TextHeaderAtom );
 								*mpStrm << (sal_uInt32)EPP_TEXTTYPE_Title;
 								mpPptEscherEx->AddAtom( mnTextSize << 1, EPP_TextCharsAtom );
-								const sal_Unicode* pString = aUString;
+								const sal_Unicode* pString = aUString.getStr();
 								for ( sal_uInt32 i = 0; i < mnTextSize; i++ )
 								{
 									nChar = pString[ i ];       // 0xa -> 0xb weicher Zeilenumbruch
diff --git a/main/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx b/main/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
index d8d0256..96830f8 100644
--- a/main/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
+++ b/main/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
@@ -37,10 +37,8 @@
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <rtl/ustring.h>
 #include<sfx2/viewfrm.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <sfx2/objsh.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <svx/AccessibleShape.hxx>
 
 #include <svx/svdobj.hxx>
@@ -49,7 +47,6 @@
 #include <toolkit/helper/vclunohelper.hxx>
 #include "Window.hxx"
 #include <vcl/svapp.hxx>
-//IAccessibility2 Implementation 2009-----
 #include "OutlineViewShell.hxx"
 
 #include "SlideViewShell.hxx"
@@ -58,7 +55,6 @@
 #include <editeng/editobj.hxx>
 #include "LayerTabBar.hxx"
 #include <svtools/colorcfg.hxx>
-//-----IAccessibility2 Implementation 2009
 #include "ViewShell.hxx"
 #include "View.hxx"
 #include <memory>
@@ -99,9 +95,7 @@
     maShapeTreeInfo.SetViewForwarder (&maViewForwarder);
 
     mxWindow = ::VCLUnoHelper::GetInterface (pSdWindow);
-//IAccessibility2 Implementation 2009-----
 	mpViewShell = pViewShell;
-//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -173,11 +167,9 @@
             }
         }
     }
-//IAccessibility2 Implementation 2009-----
 	SfxObjectShell* pObjShell = mpViewShell->GetViewFrame()->GetObjectShell();
 	if(!pObjShell->IsReadOnly())
 		SetState(AccessibleStateType::EDITABLE);
-//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -453,10 +445,8 @@
             static_cast<beans::XPropertyChangeListener*>(this),
             static_cast<awt::XWindowListener*>(this),
             static_cast<awt::XFocusListener*>(this)
-//IAccessibility2 Implementation 2009-----
 		   ,static_cast<XAccessibleExtendedAttributes*>(this)
 		   ,static_cast<XAccessibleGetAccFlowTo*>(this)
-//-----IAccessibility2 Implementation 2009
             );
     return aReturn;
 }
@@ -858,7 +848,6 @@
 {
 }
 
-//IAccessibility2 Implementation 2009-----
 uno::Any SAL_CALL AccessibleDocumentViewBase::getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) 
 {
@@ -1003,5 +992,4 @@
     ::osl::MutexGuard aGuard (maMutex);
     return mpViewShell->GetView()->getColorConfig().GetColorValue( ::svtools::DOCCOLOR ).nColor;
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace accessibility
diff --git a/main/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx b/main/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
index 4cef6a5..7aa021a 100644
--- a/main/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
+++ b/main/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
@@ -52,14 +52,12 @@
 
 #include "ViewShell.hxx"
 #include "View.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "DrawDocShell.hxx"
 #include <drawdoc.hxx>
 #include <algorithm>
 #include "sdpage.hxx"
 #include "slideshow.hxx"
 #include "anminfo.hxx"
-//-----IAccessibility2 Implementation 2009
 #include <memory>
 
 #include "accessibility.hrc"
@@ -78,7 +76,6 @@
 namespace accessibility {
 
 
-//IAccessibility2 Implementation 2009-----
 struct XShapePosCompareHelper
 {
 	bool operator() ( const uno::Reference<drawing::XShape>& xshape1, 
@@ -93,7 +90,6 @@
 			return 0;
 	}
 };
-//-----IAccessibility2 Implementation 2009
 //=====  internal  ============================================================
 
 AccessibleDrawDocumentView::AccessibleDrawDocumentView (
@@ -285,7 +281,6 @@
             static_cast<uno::XWeak*>(this));
 }
 
-//IAccessibility2 Implementation 2009-----
 OUString SAL_CALL
 	AccessibleDrawDocumentView::getAccessibleName(void)
 	throw (::com::sun::star::uno::RuntimeException)
@@ -322,7 +317,6 @@
 
 	return sName;
 }
-//-----IAccessibility2 Implementation 2009
 //=====  XEventListener  ======================================================
 
 void SAL_CALL
@@ -391,9 +385,7 @@
         }
         else
             OSL_TRACE ("View invalid");
-//IAccessibility2 Implementation 2009-----
 		CommitChange(AccessibleEventId::PAGE_CHANGED,rEventObject.NewValue,rEventObject.OldValue);
-//-----IAccessibility2 Implementation 2009
     }
     else if (rEventObject.PropertyName == OUString (RTL_CONSTASCII_USTRINGPARAM("VisibleArea")))
     {
@@ -403,7 +395,6 @@
                 IAccessibleViewForwarderListener::VISIBLE_AREA, 
                 &maViewForwarder);
     }
-//IAccessibility2 Implementation 2009-----
 	else if (rEventObject.PropertyName == OUString (RTL_CONSTASCII_USTRINGPARAM("ActiveLayer")))
 	{
 		CommitChange(AccessibleEventId::PAGE_CHANGED,rEventObject.NewValue,rEventObject.OldValue);
@@ -455,7 +446,6 @@
             }
 	}
     }
-//-----IAccessibility2 Implementation 2009
     else
     {
         OSL_TRACE ("  unhandled");
@@ -497,7 +487,6 @@
     return aServiceNames;
 }
 
-//IAccessibility2 Implementation 2009-----
 //=====  XInterface  ==========================================================
     
 uno::Any SAL_CALL
@@ -627,7 +616,6 @@
 	}
 	return aRet;
 }
-//-----IAccessibility2 Implementation 2009
 ///	Create a name for this view.
 ::rtl::OUString
     AccessibleDrawDocumentView::CreateAccessibleName (void)
@@ -883,10 +871,7 @@
 {
     if (mpChildrenManager != NULL)
     {
-//IAccessibility2 Implementation 2009-----
-        //mpChildrenManager->UpdateSelection();
 	sal_Bool bChange = sal_False;
-//-----IAccessibility2 Implementation 2009
         // When none of the children has the focus then claim it for the
         // view.
         if ( ! mpChildrenManager->HasFocus())
@@ -896,12 +881,10 @@
 	}
         else
             ResetState (AccessibleStateType::FOCUSED);
-//IAccessibility2 Implementation 2009-----
 	mpChildrenManager->UpdateSelection();
 	// if the child gets focus in UpdateSelection(), needs to reset the focus on document.
 	if (mpChildrenManager->HasFocus() && bChange)
 		ResetState (AccessibleStateType::FOCUSED);
-//-----IAccessibility2 Implementation 2009
     }
 }
 
@@ -948,7 +931,6 @@
     AccessibleDocumentViewBase::disposing ();
 }
 
-//IAccessibility2 Implementation 2009-----
 ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >
 		SAL_CALL AccessibleDrawDocumentView::get_AccFlowTo(const ::com::sun::star::uno::Any& rAny, sal_Int32 nType)
 		throw ( ::com::sun::star::uno::RuntimeException )
@@ -1099,7 +1081,6 @@
 
 	return xRet;
 }
-//-----IAccessibility2 Implementation 2009
 
 void AccessibleDrawDocumentView::UpdateAccessibleName (void)
 {
diff --git a/main/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx b/main/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx
index 9f99d11..836ef53 100644
--- a/main/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx
+++ b/main/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx
@@ -48,8 +48,6 @@
           mViewForwarder( rOutlView )
     {       
         // register as listener - need to broadcast state change messages
-		// Moved to ::GetTextForwarder()
-        //rOutliner.SetNotifyHdl( LINK(this, AccessibleOutlineEditSource, NotifyHdl) );
         StartListening(rOutliner);
     }
 
@@ -62,10 +60,7 @@
 
     SvxEditSource* AccessibleOutlineEditSource::Clone() const
     {
-		//IAccessibility2 Implementation 2009-----
-        /*return NULL;*/
 		return new AccessibleOutlineEditSource(*mpOutliner, mrView, *mpOutlinerView, mrWindow);
-		//-----IAccessibility2 Implementation 2009
     }
 
     SvxTextForwarder* AccessibleOutlineEditSource::GetTextForwarder()
diff --git a/main/sd/source/ui/accessibility/AccessibleOutlineView.cxx b/main/sd/source/ui/accessibility/AccessibleOutlineView.cxx
index 047767e..7f172ed 100644
--- a/main/sd/source/ui/accessibility/AccessibleOutlineView.cxx
+++ b/main/sd/source/ui/accessibility/AccessibleOutlineView.cxx
@@ -150,7 +150,6 @@
     return maTextHelper.GetChild(nIndex);
 }
 
-//IAccessibility2 Implementation 2009-----
 #include <drawdoc.hxx>
 ::rtl::OUString SAL_CALL
 	AccessibleOutlineView::getAccessibleName(void)
@@ -180,7 +179,6 @@
 	}
 	return sName;
 }
-//-----IAccessibility2 Implementation 2009
 //=====  XAccessibleEventBroadcaster  ========================================
 
 void SAL_CALL AccessibleOutlineView::addEventListener( const uno::Reference< XAccessibleEventListener >& xListener ) throw (uno::RuntimeException)
@@ -188,9 +186,7 @@
     // delegate listener handling to children manager.
     if ( ! IsDisposed())
         maTextHelper.AddEventListener(xListener);
-//IAccessibility2 Implementation 2009-----
 	AccessibleContextBase::addEventListener(xListener);
-//-----IAccessibility2 Implementation 2009
 }
 
 void SAL_CALL AccessibleOutlineView::removeEventListener( const uno::Reference< XAccessibleEventListener >& xListener ) throw (uno::RuntimeException)
@@ -198,9 +194,7 @@
     // forward
     if ( ! IsDisposed())
         maTextHelper.RemoveEventListener(xListener);
-//IAccessibility2 Implementation 2009-----
 	AccessibleContextBase::removeEventListener(xListener);
-//-----IAccessibility2 Implementation 2009
 }
 
 //=====  XServiceInfo  ========================================================
@@ -273,9 +267,7 @@
 
         // The current page changed. Update the children accordingly.
         UpdateChildren();
-//IAccessibility2 Implementation 2009-----
     	CommitChange(AccessibleEventId::PAGE_CHANGED,rEventObject.NewValue,rEventObject.OldValue);
-//-----IAccessibility2 Implementation 2009
     }
     else if (rEventObject.PropertyName == ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("VisibleArea")))
     {
diff --git a/main/sd/source/ui/accessibility/AccessiblePresentationGraphicShape.cxx b/main/sd/source/ui/accessibility/AccessiblePresentationGraphicShape.cxx
index c1c9d1d..b4b4467 100644
--- a/main/sd/source/ui/accessibility/AccessiblePresentationGraphicShape.cxx
+++ b/main/sd/source/ui/accessibility/AccessiblePresentationGraphicShape.cxx
@@ -119,12 +119,10 @@
 
     return aDG();
 }
-//IAccessibility2 Implementation 2009-----
 sal_Int16 SAL_CALL AccessiblePresentationGraphicShape::getAccessibleRole () 
 	throw (::com::sun::star::uno::RuntimeException)
 {
 
 	return  AccessibleRole::GRAPHIC ;
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace accessibility
diff --git a/main/sd/source/ui/accessibility/AccessiblePresentationOLEShape.cxx b/main/sd/source/ui/accessibility/AccessiblePresentationOLEShape.cxx
index 039ce04..ddaf512 100644
--- a/main/sd/source/ui/accessibility/AccessiblePresentationOLEShape.cxx
+++ b/main/sd/source/ui/accessibility/AccessiblePresentationOLEShape.cxx
@@ -140,7 +140,6 @@
 
     return aDG();
 }
-//IAccessibility2 Implementation 2009-----
 //	Return this object's role.
 sal_Int16 SAL_CALL AccessiblePresentationOLEShape::getAccessibleRole () 
 	throw (::com::sun::star::uno::RuntimeException)
@@ -148,5 +147,4 @@
 
 	return  AccessibleRole::EMBEDDED_OBJECT ;
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace accessibility
diff --git a/main/sd/source/ui/accessibility/AccessiblePresentationShape.cxx b/main/sd/source/ui/accessibility/AccessiblePresentationShape.cxx
index 167d266..865f814 100644
--- a/main/sd/source/ui/accessibility/AccessiblePresentationShape.cxx
+++ b/main/sd/source/ui/accessibility/AccessiblePresentationShape.cxx
@@ -27,11 +27,9 @@
 
 #include "SdShapeTypes.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include "accessibility.hrc"
 #include "sdresid.hxx"
 #include <tools/string.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <svx/DescriptionGenerator.hxx>
 #include <rtl/ustring.h>
 
@@ -82,51 +80,38 @@
     ShapeTypeId nShapeType = ShapeTypeHandler::Instance().GetTypeId (mxShape);
     switch (nShapeType)
     {
-    //IAccessibility2 Implementation 2009-----
         case PRESENTATION_TITLE:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressTitle"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_TITLE_N)));
             break;
         case PRESENTATION_OUTLINER:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressOutliner"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_OUTLINER_N)));
             break;
         case PRESENTATION_SUBTITLE:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressSubtitle"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_SUBTITLE_N)));
             break;
         case PRESENTATION_PAGE:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressPage"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_PAGE_N)));
             break;
         case PRESENTATION_NOTES:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressNotes"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_NOTES_N)));
             break;
         case PRESENTATION_HANDOUT:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressHandout"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_HANDOUT_N)));
             break;
 		case PRESENTATION_HEADER:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressHeader"));
 	    sName = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_HEADER_N)) );
             break;
 		case PRESENTATION_FOOTER:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressFooter"));
 	    sName = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_FOOTER_N)) );
             break;
 		case PRESENTATION_DATETIME:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressDateAndTime"));
 	    sName = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_DATE_N)) );
             break;
 		case PRESENTATION_PAGENUMBER:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("ImpressPageNumber"));
 	    sName = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_NUMBER_N)) );
             break;
         default:
-            //sName = ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM("UnknownAccessibleImpressShape"));
             sName = ::rtl::OUString (String(SdResId(SID_SD_A11Y_P_UNKNOWN_N)));
-	//-----IAccessibility2 Implementation 2009
             uno::Reference<drawing::XShapeDescriptor> xDescriptor (mxShape, uno::UNO_QUERY);
             if (xDescriptor.is())
                 sName += ::rtl::OUString (RTL_CONSTASCII_USTRINGPARAM(": "))
@@ -149,14 +134,11 @@
     ShapeTypeId nShapeType = ShapeTypeHandler::Instance().GetTypeId (mxShape);
     switch (nShapeType)
     {
-    //IAccessibility2 Implementation 2009-----
         case PRESENTATION_TITLE:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationTitleShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_TITLE_D)) );
 	    aDG.Initialize (sDescription);		
             break;
         case PRESENTATION_OUTLINER:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationOutlinerShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_OUTLINER_D)) );
 	    aDG.Initialize (sDescription);				//PresentationOutlinerShape
             break;
@@ -181,30 +163,24 @@
 	    aDG.Initialize (sDescription);				//PresentationHandoutShape
             break;
 		case PRESENTATION_HEADER:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationHeaderShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_HEADER_D)) );
 	    aDG.Initialize (sDescription);				//PresentationHeaderShape
             break;
 		case PRESENTATION_FOOTER:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationFooterShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_FOOTER_D)) );
 	    aDG.Initialize (sDescription);				//PresentationFooterShape
             break;
 		case PRESENTATION_DATETIME:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationDateAndTimeShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_DATE_D)) );
 	    aDG.Initialize (sDescription);				//PresentationDateShape
             break;
 		case PRESENTATION_PAGENUMBER:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("PresentationPageNumberShape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_NUMBER_D)) );
 	    aDG.Initialize (sDescription);				//PresentationNumberShape
             break;
         default:
-            //aDG.Initialize (::rtl::OUString::createFromAscii ("Unknown accessible presentation shape"));
 	    sDescription = ::rtl::OUString ( String(SdResId(SID_SD_A11Y_P_UNKNOWN_D)) );
 	    aDG.Initialize (sDescription);				//Unknown accessible presentation shape
-	    //-----IAccessibility2 Implementation 2009
             uno::Reference<drawing::XShapeDescriptor> xDescriptor (mxShape, uno::UNO_QUERY);
             if (xDescriptor.is())
             {
@@ -215,7 +191,6 @@
 
     return aDG();
 }
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString AccessiblePresentationShape::GetStyle()
 {
     ::rtl::OUString sName;
@@ -264,5 +239,4 @@
     return sName;
 
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace accessibility	
diff --git a/main/sd/source/ui/accessibility/AccessibleSlideSorterObject.cxx b/main/sd/source/ui/accessibility/AccessibleSlideSorterObject.cxx
index b0f0439..ca5c249 100644
--- a/main/sd/source/ui/accessibility/AccessibleSlideSorterObject.cxx
+++ b/main/sd/source/ui/accessibility/AccessibleSlideSorterObject.cxx
@@ -200,7 +200,6 @@
 {
     ThrowIfDisposed();
     //set Role = Shape
-    //static sal_Int16 nRole = AccessibleRole::LIST_ITEM;
     static sal_Int16 nRole = AccessibleRole::SHAPE;
     return nRole;
 }
diff --git a/main/sd/source/ui/accessibility/accessibility.hrc b/main/sd/source/ui/accessibility/accessibility.hrc
index c98c979..c0558f4 100644
--- a/main/sd/source/ui/accessibility/accessibility.hrc
+++ b/main/sd/source/ui/accessibility/accessibility.hrc
@@ -44,7 +44,6 @@
 #define SID_SD_A11Y_I_HANDOUTVIEW_N		(SID_SD_A11Y_START + 10)
 #define SID_SD_A11Y_I_HANDOUTVIEW_D		(SID_SD_A11Y_START + 11)
 
-//IAccessibility2 Implementation 2009-----
 #define SID_SD_A11Y_P_TITLE_N			(SID_SD_A11Y_START + 12)
 #define SID_SD_A11Y_P_TITLE_D			(SID_SD_A11Y_START + 13)
 #define SID_SD_A11Y_P_OUTLINER_N		(SID_SD_A11Y_START + 14)
@@ -84,6 +83,5 @@
 #define   SID_SD_A11Y_I_PREVIEW_D (SID_SD_A11Y_START + 47)
 #define   SID_SD_A11Y_I_PREVIEW_SUFFIX (SID_SD_A11Y_START + 48)
 #define   SID_SD_A11Y_D_PRESENTATION_READONLY (SID_SD_A11Y_START + 49)
-//-----IAccessibility2 Implementation 2009
 #endif /* _SD_ACCESSIBILITY_HRC */
 
diff --git a/main/sd/source/ui/accessibility/accessibility.src b/main/sd/source/ui/accessibility/accessibility.src
index a165c40..d4c55eb 100644
--- a/main/sd/source/ui/accessibility/accessibility.src
+++ b/main/sd/source/ui/accessibility/accessibility.src
@@ -87,7 +87,6 @@
 	Text [ en-US ] = "This is where you decide on the layout for handouts.";
 };
 
-//IAccessibility2 Implementation 2009-----
 String SID_SD_A11Y_P_TITLE_N
 {
 	Text [ en-US ] = "PresentationTitle";
@@ -257,4 +256,3 @@
 {
 	Text [ en-US ] = "(read-only)";
 };
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sd/source/ui/dlg/custsdlg.src b/main/sd/source/ui/dlg/custsdlg.src
index b365c83..06f4c84 100644
--- a/main/sd/source/ui/dlg/custsdlg.src
+++ b/main/sd/source/ui/dlg/custsdlg.src
@@ -95,9 +95,7 @@
 		Pos = MAP_APPFONT ( 6 , 6 ) ;
 		Size = MAP_APPFONT ( 102 + DIFF , 86 + DIFF_Y ) ;
 		TabStop = TRUE ;
-		//IAccessibility2 Implementation 2009-----
 		QuickHelpText [ en-US ] = "Custom Screen Show" ;
-		//-----IAccessibility2 Implementation 2009
 	};
 	CheckBox CBX_USE_CUSTOMSHOW
 	{
diff --git a/main/sd/source/ui/dlg/navigatr.cxx b/main/sd/source/ui/dlg/navigatr.cxx
index 2105cb6..134c407 100644
--- a/main/sd/source/ui/dlg/navigatr.cxx
+++ b/main/sd/source/ui/dlg/navigatr.cxx
@@ -119,9 +119,7 @@
     // set focus to listbox, otherwise it is in the toolbox which is only useful
     // for keyboard navigation
     maTlbObjects.GrabFocus();
-//IAccessibility2 Implementation 2009-----
        maTlbObjects.SetSdNavigatorWinFlag(sal_True);
-//-----IAccessibility2 Implementation 2009
 
     // DragTypeListBox
     maLbDocs.SetSelectHdl( LINK( this, SdNavigatorWin, SelectDocumentHdl ) );
@@ -178,7 +176,6 @@
 
 // -----------------------------------------------------------------------
 
-//IAccessibility2 Implementation 2009-----
 //Solution: when object is marked , fresh the corresponding entry tree .
 //==================================================
 void SdNavigatorWin::FreshTree( const SdDrawDocument* pDoc )
@@ -199,7 +196,6 @@
 	maTlbObjects.FreshCurEntry();
 }
 //==================================================
-//-----IAccessibility2 Implementation 2009
 void SdNavigatorWin::InitTreeLB( const SdDrawDocument* pDoc )
 {
 	SdDrawDocument* pNonConstDoc = (SdDrawDocument*) pDoc; // const as const can...
@@ -270,7 +266,6 @@
 }
 
 // -----------------------------------------------------------------------
-//IAccessibility2 Implementation 2009-----
 //Solution: Get  SdDrawDocShell 
 sd::DrawDocShell* SdNavigatorWin::GetDrawDocShell( const SdDrawDocument* pDoc )
 {
@@ -279,7 +274,6 @@
 	sd::DrawDocShell* pDocShell = pDoc->GetDocSh();
 	return pDocShell;
 }
-//-----IAccessibility2 Implementation 2009
 
 IMPL_LINK( SdNavigatorWin, SelectToolboxHdl, void *, EMPTYARG )
 {
@@ -437,10 +431,8 @@
 				SfxStringItem aItem( SID_NAVIGATOR_OBJECT, aStr );
 				mpBindings->GetDispatcher()->Execute(
 					SID_NAVIGATOR_OBJECT, SFX_CALLMODE_SLOT | SFX_CALLMODE_RECORD, &aItem, 0L );
-//IAccessibility2 Implementation 2009-----
 				//Solution: set sign variable
 				maTlbObjects.MarkCurEntry(aStr);
-//-----IAccessibility2 Implementation 2009
 
                 // #98821# moved here from SetGetFocusHdl. Reset the
                 // focus only if something has been selected in the
diff --git a/main/sd/source/ui/dlg/sdtreelb.cxx b/main/sd/source/ui/dlg/sdtreelb.cxx
index 273a86b..8084b85 100644
--- a/main/sd/source/ui/dlg/sdtreelb.cxx
+++ b/main/sd/source/ui/dlg/sdtreelb.cxx
@@ -295,7 +295,6 @@
         delete mpMedium;
 }
 
-//IAccessibility2 Implementation 2009-----
 // helper function for 	GetEntryAltText and GetEntryLongDescription
 String SdPageObjsTLB::getAltLongDescText( SvLBoxEntry* pEntry , sal_Bool isAltText) const
 {
@@ -472,7 +471,6 @@
 	}
 	return SvTreeListBox::Clear();
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |* return name of object
@@ -710,7 +708,6 @@
         IM_FLAT,
         sal_False /*not reverse*/);
 
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool  bMarked=sal_False;
 	if(bisInSdNavigatorWin)
 	{
@@ -733,7 +730,6 @@
 				pEntry->SetMarked( sal_False );
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
     while( aIter.IsMore() )
     {
         SdrObject* pObj = aIter.Next();
@@ -748,7 +744,6 @@
             {
                 SvLBoxEntry* pNewEntry = InsertEntry( aStr, maImgOle, maImgOle, pEntry,
                     sal_False, LIST_APPEND, pObj);
-				//IAccessibility2 Implementation 2009-----
 				if(bisInSdNavigatorWin)
 				{
 					Window* pWindow=NULL;
@@ -770,7 +765,6 @@
 							pNewEntry->SetMarked( sal_False );
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
                 SetExpandedEntryBmp( pNewEntry, maImgOleH, BMP_COLOR_HIGHCONTRAST );
                 SetCollapsedEntryBmp( pNewEntry, maImgOleH, BMP_COLOR_HIGHCONTRAST );
             }
@@ -778,7 +772,6 @@
             {
                 SvLBoxEntry* pNewEntry = InsertEntry( aStr, maImgGraphic, maImgGraphic, pEntry,
                     sal_False, LIST_APPEND, pObj );
-				//IAccessibility2 Implementation 2009-----
 				if(bisInSdNavigatorWin)
 				{
 					Window* pWindow=NULL;
@@ -804,7 +797,6 @@
 						}
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
                 SetExpandedEntryBmp( pNewEntry, maImgGraphicH, BMP_COLOR_HIGHCONTRAST );
                 SetCollapsedEntryBmp( pNewEntry, maImgGraphicH, BMP_COLOR_HIGHCONTRAST );
             }
@@ -822,7 +814,6 @@
             {
                 SvLBoxEntry* pNewEntry = InsertEntry( aStr, rIconProvider.maImgObjects, rIconProvider.maImgObjects, pEntry,
                     sal_False, LIST_APPEND, pObj );
-				//IAccessibility2 Implementation 2009-----
 				if(bisInSdNavigatorWin)
 				{
 					Window* pWindow=NULL;
@@ -848,7 +839,6 @@
 						}
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
                 SetExpandedEntryBmp( pNewEntry, rIconProvider.maImgObjectsH, BMP_COLOR_HIGHCONTRAST );
                 SetCollapsedEntryBmp( pNewEntry, rIconProvider.maImgObjectsH, BMP_COLOR_HIGHCONTRAST );
             }
@@ -871,7 +861,6 @@
             pEntry,
             bIsExcluded ? rIconProvider.maImgPageObjsExclH : rIconProvider.maImgPageObjsH,
             BMP_COLOR_HIGHCONTRAST);
-		//IAccessibility2 Implementation 2009-----
 		if (mbSaveTreeItemState)
 		{
 			vector<String>:: iterator iteStart = maTreeItem.begin();
@@ -888,7 +877,6 @@
 		}
 		else
 			Expand( pEntry );
-		//-----IAccessibility2 Implementation 2009
     }
 }
 
@@ -1266,7 +1254,6 @@
 
 		DoubleClickHdl();
 	}
-//IAccessibility2 Implementation 2009-----
 	else if (rKEvt.GetKeyCode().GetCode() == KEY_SPACE)
 	{
 	   if(bisInSdNavigatorWin)
@@ -1321,7 +1308,6 @@
 		   Invalidate();
 	   }
 	}
-//-----IAccessibility2 Implementation 2009
 	else
 		SvTreeListBox::KeyInput( rKEvt );
 }
diff --git a/main/sd/source/ui/docshell/docshel4.cxx b/main/sd/source/ui/docshell/docshel4.cxx
index 1216209..3a9aa95 100644
--- a/main/sd/source/ui/docshell/docshel4.cxx
+++ b/main/sd/source/ui/docshell/docshel4.cxx
@@ -93,10 +93,8 @@
 #include "sdhtmlfilter.hxx"
 #include "framework/FrameworkHelper.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <sfx2/viewfrm.hxx>
 #include "SdUnoDrawView.hxx"
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
 using ::sd::framework::FrameworkHelper;
@@ -578,7 +576,6 @@
 
 sal_Bool DrawDocShell::SaveAs( SfxMedium& rMedium )
 {
-//IAccessibility2 Implementation 2009-----
 	mpDoc->setDocAccTitle(String());
 	SfxViewFrame* pFrame1 = SfxViewFrame::GetFirst( this );
 	if (pFrame1)
@@ -593,7 +590,6 @@
 			}
 		}
 	}
-//-----IAccessibility2 Implementation 2009
 	mpDoc->StopWorkStartupDelay();
 
     //TODO/LATER: why this?!
@@ -928,7 +924,6 @@
 	return (bFound);
 }
 
-//IAccessibility2 Implementation 2009-----
 //Solution: If  object  is marked , return true , else return false . 
 sal_Bool DrawDocShell::IsMarked(  SdrObject* pObject  )
 {
@@ -1162,7 +1157,6 @@
 
 	return (bFound);
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |* SaveAsOwnFormat: wenn es eine Dokumentvorlage werden soll,
@@ -1286,7 +1280,6 @@
 	( mpViewShell ? mpViewShell->GetViewFrame() : SfxViewFrame::Current() )->GetBindings().Execute( SID_OPENHYPERLINK, ppArgs );
 }
 
-//IAccessibility2 Implementation 2009-----
 void DrawDocShell::setDocAccTitle( const String& rTitle )
 { 
 	if (mpDoc ) 
@@ -1320,5 +1313,4 @@
 
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace sd
diff --git a/main/sd/source/ui/func/fudraw.cxx b/main/sd/source/ui/func/fudraw.cxx
index a816c33..795f057 100644
--- a/main/sd/source/ui/func/fudraw.cxx
+++ b/main/sd/source/ui/func/fudraw.cxx
@@ -470,7 +470,6 @@
 				// changeover to the next object
 				if(!mpView->MarkNextObj( !aCode.IsShift() ))
 				{
-					//IAccessibility2 Implementation 2009-----
 					//If there is only one object, don't do the UnmarkAlllObj() & MarkNextObj(). 
 					if ( mpView->GetMarkableObjCount() > 1 && mpView->AreObjectsMarked() )
 					{
@@ -479,7 +478,6 @@
 						mpView->UnmarkAllObj();
 						mpView->MarkNextObj(!aCode.IsShift());
 					}
-					//-----IAccessibility2 Implementation 2009
 				}
 
 				// #97016# II
diff --git a/main/sd/source/ui/func/fuediglu.cxx b/main/sd/source/ui/func/fuediglu.cxx
index bcafec4..baf20ed 100644
--- a/main/sd/source/ui/func/fuediglu.cxx
+++ b/main/sd/source/ui/func/fuediglu.cxx
@@ -63,12 +63,10 @@
     SdDrawDocument*	pDoc,
     SfxRequest& rReq) 
     : FuDraw(pViewSh, pWin, pView, pDoc, rReq)
-//IAccessibility2 Implementation 2009-----
 	 //Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
 	 //and SHIFT+ENTER key to decide the postion and draw the new insert point
 	 ,bBeginInsertPoint(sal_False),
 	oldPoint(0,0)
-//-----IAccessibility2 Implementation 2009
 {
 }
 
@@ -327,10 +325,8 @@
 {
 	mpView->SetActualWin( mpWindow );
 
-//IAccessibility2 Implementation 2009-----
 	//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
 	//and SHIFT+ENTER key to decide the postion and draw the new insert point
-	//sal_Bool bReturn = FuDraw::KeyInput(rKEvt);
 
 	sal_Bool bReturn = sal_False;
 	
@@ -408,11 +404,9 @@
 	}
 	if(!bReturn)
 		bReturn = FuDraw::KeyInput(rKEvt);
-//-----IAccessibility2 Implementation 2009
 	return bReturn;
 }
 
-//IAccessibility2 Implementation 2009-----
  //Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
  //and SHIFT+ENTER key to decide the postion and draw the new insert point
 void FuEditGluePoints::ForcePointer(const MouseEvent* pMEvt)
@@ -428,7 +422,6 @@
 		FuDraw::ForcePointer(pMEvt);
 	}
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |* Command-event
diff --git a/main/sd/source/ui/func/fusel.cxx b/main/sd/source/ui/func/fusel.cxx
index 9ccf41a..c0c3abe 100644
--- a/main/sd/source/ui/func/fusel.cxx
+++ b/main/sd/source/ui/func/fusel.cxx
@@ -113,13 +113,11 @@
       bMirrorSide0(sal_False),
       nEditMode(SID_BEZIER_MOVE),
       pWaterCanCandidate(NULL)
-//IAccessibility2 Implementation 2009-----
   //Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
   //and SHIFT+ENTER key to decide the postion and draw the new insert point
     ,bBeginInsertPoint(sal_False),
   	oldPoint(0,0)
   ,bMovedToCenterPoint(sal_False)
-//-----IAccessibility2 Implementation 2009
 {
 }
 
@@ -955,7 +953,6 @@
 			bReturn = FuSelection::cancel();
         }
         break;
-//IAccessibility2 Implementation 2009-----
   //Solution: add keyboard operation for insert points in drawing curve
 		case KEY_UP:
 		case KEY_DOWN:
@@ -1028,7 +1025,6 @@
 			}
 			break;
     }
-//-----IAccessibility2 Implementation 2009
 	if (!bReturn)
 	{
 		bReturn = FuDraw::KeyInput(rKEvt);
@@ -1046,7 +1042,6 @@
 }
 
 
-//IAccessibility2 Implementation 2009-----
 void FuSelection::ForcePointer(const MouseEvent* pMEvt)
 {
 	if(bMovedToCenterPoint && !bBeginInsertPoint && pMEvt)
@@ -1060,7 +1055,6 @@
 		FuDraw::ForcePointer(pMEvt);
 	}
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |* Function aktivieren
diff --git a/main/sd/source/ui/inc/AccessibleDocumentViewBase.hxx b/main/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
index f0f2ea8..fd32fff 100644
--- a/main/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
+++ b/main/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
@@ -38,7 +38,6 @@
 #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
 #include <tools/link.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
 #include "DrawViewShell.hxx"
 #include "sdpage.hxx"
@@ -48,7 +47,6 @@
 #include <editeng/outlobj.hxx>
 #include <com/sun/star/accessibility/XAccessibleGetAccFlowTo.hpp>
 class SdViewShell;
-//-----IAccessibility2 Implementation 2009
 namespace sd {
 class ViewShell;
 class Window;
@@ -97,10 +95,8 @@
         public ::com::sun::star::beans::XPropertyChangeListener,
         public ::com::sun::star::awt::XWindowListener,
         public ::com::sun::star::awt::XFocusListener
-//IAccessibility2 Implementation 2009-----
 		,public ::com::sun::star::accessibility::XAccessibleExtendedAttributes
 	       ,public com::sun::star::accessibility::XAccessibleGetAccFlowTo
-//-----IAccessibility2 Implementation 2009
 {
 public:
     //=====  internal  ========================================================
@@ -265,12 +261,10 @@
         throw (::com::sun::star::uno::RuntimeException); 
 	virtual void SAL_CALL focusLost (const ::com::sun::star::awt::FocusEvent& e)
         throw (::com::sun::star::uno::RuntimeException); 
-//IAccessibility2 Implementation 2009-----
 	//----------------------------xAttribute----------------------------
 	virtual com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
 	 ::sd::ViewShell* mpViewShell;
-//-----IAccessibility2 Implementation 2009
 private:
 
     // return the member maMutex;
@@ -379,7 +373,6 @@
     virtual void SetAccessibleOLEObject (
         const ::com::sun::star::uno::Reference <
         ::com::sun::star::accessibility::XAccessible>& xOLEObject);
-//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleGetAccFromXShape  ============================================
 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >
 		SAL_CALL get_AccFlowTo(const ::com::sun::star::uno::Any& rAny, sal_Int32 nType)
@@ -392,7 +385,6 @@
 
     virtual sal_Int32 SAL_CALL getBackground(  ) 
         throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
     virtual void impl_dispose (void);
 };
 
diff --git a/main/sd/source/ui/inc/AccessibleDrawDocumentView.hxx b/main/sd/source/ui/inc/AccessibleDrawDocumentView.hxx
index c9bb9de..7dfe7df 100644
--- a/main/sd/source/ui/inc/AccessibleDrawDocumentView.hxx
+++ b/main/sd/source/ui/inc/AccessibleDrawDocumentView.hxx
@@ -26,9 +26,7 @@
 
 #include "AccessibleDocumentViewBase.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleGroupPosition.hpp>
-//-----IAccessibility2 Implementation 2009
 
 namespace accessibility {
 
@@ -43,9 +41,7 @@
 */
 class AccessibleDrawDocumentView : 
     public AccessibleDocumentViewBase
-//IAccessibility2 Implementation 2009-----
     ,public ::com::sun::star::accessibility::XAccessibleGroupPosition
-//-----IAccessibility2 Implementation 2009
 {
 public:
     //=====  internal  ========================================================
@@ -80,11 +76,9 @@
         throw (::com::sun::star::uno::RuntimeException,
             ::com::sun::star::lang::IndexOutOfBoundsException);
 
-//IAccessibility2 Implementation 2009-----
 	virtual ::rtl::OUString SAL_CALL
 		getAccessibleName(void)
 		throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 
     //=====  lang::XEventListener  ============================================
 
@@ -98,7 +92,6 @@
 	virtual void SAL_CALL
 		propertyChange (const ::com::sun::star::beans::PropertyChangeEvent& rEventObject)
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
     //=====  XInterface  ======================================================
     
     virtual com::sun::star::uno::Any SAL_CALL
@@ -119,7 +112,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 	virtual ::rtl::OUString SAL_CALL getObjectLink( const ::com::sun::star::uno::Any& accoject )
         throw (::com::sun::star::uno::RuntimeException);	
-//-----IAccessibility2 Implementation 2009
 
 protected:
 
@@ -154,10 +146,8 @@
     virtual void
         implSelect( sal_Int32 nAccessibleChildIndex, sal_Bool bSelect ) 
         throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 private:
 	::sd::ViewShell* mpSdViewSh;
-//-----IAccessibility2 Implementation 2009
 
 protected:
     /** This object manages the shapes of the represented draw page.  It is
@@ -198,14 +188,12 @@
 
     virtual void impl_dispose (void);
 
-//IAccessibility2 Implementation 2009-----
     //=====  XAccessibleGetAccFromXShape  ============================================
 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >
 		SAL_CALL get_AccFlowTo(const ::com::sun::star::uno::Any& rAny, sal_Int32 nType)
 		throw ( ::com::sun::star::uno::RuntimeException );
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
 		GetSelAccContextInTable();
-//-----IAccessibility2 Implementation 2009
     
 private:
     void UpdateAccessibleName (void);
diff --git a/main/sd/source/ui/inc/AccessibleOutlineView.hxx b/main/sd/source/ui/inc/AccessibleOutlineView.hxx
index e568d5a..ac5ded2 100644
--- a/main/sd/source/ui/inc/AccessibleOutlineView.hxx
+++ b/main/sd/source/ui/inc/AccessibleOutlineView.hxx
@@ -75,11 +75,9 @@
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
         getAccessibleChild (sal_Int32 nIndex)
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
     virtual ::rtl::OUString SAL_CALL
         getAccessibleName(void)
         throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
     //=====  XAccessibleEventBroadcaster  ========================================
 
     virtual void SAL_CALL 
diff --git a/main/sd/source/ui/inc/AccessiblePresentationGraphicShape.hxx b/main/sd/source/ui/inc/AccessiblePresentationGraphicShape.hxx
index 58c9718..81cf295 100644
--- a/main/sd/source/ui/inc/AccessiblePresentationGraphicShape.hxx
+++ b/main/sd/source/ui/inc/AccessiblePresentationGraphicShape.hxx
@@ -27,9 +27,7 @@
 
 #include <svx/AccessibleGraphicShape.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
-//-----IAccessibility2 Implementation 2009
 namespace accessibility {
 
 /**	This class makes Impress shapes accessible.
@@ -63,10 +61,8 @@
 	virtual ::rtl::OUString
     	CreateAccessibleDescription ()
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 	///	Return this object's role.
 	virtual sal_Int16 SAL_CALL getAccessibleRole () throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 };
 
 } // end of namespace accessibility
diff --git a/main/sd/source/ui/inc/AccessiblePresentationOLEShape.hxx b/main/sd/source/ui/inc/AccessiblePresentationOLEShape.hxx
index b47b201..be58468 100644
--- a/main/sd/source/ui/inc/AccessiblePresentationOLEShape.hxx
+++ b/main/sd/source/ui/inc/AccessiblePresentationOLEShape.hxx
@@ -27,9 +27,7 @@
 
 #include <svx/AccessibleOLEShape.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
-//-----IAccessibility2 Implementation 2009
 namespace accessibility {
 
 /**	This class makes Impress shapes accessible.
@@ -63,10 +61,8 @@
 	virtual ::rtl::OUString
     	CreateAccessibleDescription ()
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 	///	Return this object's role.
 	virtual sal_Int16 SAL_CALL getAccessibleRole () throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 };
 
 } // end of namespace accessibility
diff --git a/main/sd/source/ui/inc/AccessiblePresentationShape.hxx b/main/sd/source/ui/inc/AccessiblePresentationShape.hxx
index 3dd780e..449ad22 100644
--- a/main/sd/source/ui/inc/AccessiblePresentationShape.hxx
+++ b/main/sd/source/ui/inc/AccessiblePresentationShape.hxx
@@ -59,9 +59,7 @@
 	virtual ::rtl::OUString
     	CreateAccessibleDescription ()
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 	::rtl::OUString GetStyle();
-//-----IAccessibility2 Implementation 2009
 
 private:
     /** Don't use the default constructor.  Use the public constructor that 
diff --git a/main/sd/source/ui/inc/AccessibleSlideSorterView.hxx b/main/sd/source/ui/inc/AccessibleSlideSorterView.hxx
index 332d4bb..0f0c611 100644
--- a/main/sd/source/ui/inc/AccessibleSlideSorterView.hxx
+++ b/main/sd/source/ui/inc/AccessibleSlideSorterView.hxx
@@ -286,7 +286,6 @@
     	getSupportedServiceNames (void)
         throw (::com::sun::star::uno::RuntimeException);
 
-	// IAccessibility2 Implementation 2009
 	virtual void SwitchViewActivated (void);
 private:
     class Implementation;
diff --git a/main/sd/source/ui/inc/AccessibleSlideView.hxx b/main/sd/source/ui/inc/AccessibleSlideView.hxx
index 249b5c7..545f0b4 100644
--- a/main/sd/source/ui/inc/AccessibleSlideView.hxx
+++ b/main/sd/source/ui/inc/AccessibleSlideView.hxx
@@ -25,10 +25,8 @@
 #define SD_ACCESSIBILITY_ACCESSIBLE_SLIDE_VIEW_HXX
 
 #include <cppuhelper/implbase6.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <cppuhelper/implbase9.hxx>
 //#include <cppuhelper/implbase7.hxx>
-//-----IAccessibility2 Implementation 2009
 #include "SlideView.hxx"
 #include <com/sun/star/lang/XUnoTunnel.hpp>
 #include <com/sun/star/accessibility/XAccessible.hpp>
@@ -38,9 +36,7 @@
 #include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
-//-----IAccessibility2 Implementation 2009
 #include <vector>
 
 class SdDrawDocument;
@@ -170,10 +166,8 @@
     ::com::sun::star::accessibility::XAccessibleComponent,
     ::com::sun::star::accessibility::XAccessibleSelection,
     ::com::sun::star::lang::XServiceInfo
-//IAccessibility2 Implementation 2009-----
 	,::com::sun::star::accessibility::XAccessibleExtendedAttributes
 	,::com::sun::star::awt::XFocusListener >
-//-----IAccessibility2 Implementation 2009
 {
 public:
 
@@ -199,7 +193,6 @@
 	void			            SetPageVisible( sal_uInt16 nPage, sal_Bool bVisible );
 	void			            Reset();
     void                        FocusHasChanged( sal_uInt16 nOldFocusPage, sal_uInt16 nNewFocusPage );
-//IAccessibility2 Implementation 2009-----
 	void 			SelectionHasChanged (sal_uInt16 nPage, sal_Bool bSelect );
 	//=====  XFocusListener  =================================================
 	virtual void SAL_CALL focusGained (const ::com::sun::star::awt::FocusEvent& e)
@@ -210,7 +203,6 @@
 	virtual void SAL_CALL disposing (const struct com::sun::star::lang::EventObject &) throw (::com::sun::star::uno::RuntimeException);
 	// This method is called from the component helper base class while disposing.
 	virtual void SAL_CALL disposing (void);
-//-----IAccessibility2 Implementation 2009
 private:
     ::osl::Mutex maMutex;
 	::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > >               maSlidePageObjects;
@@ -219,10 +211,8 @@
     ::sd::Window* mpParentWindow;
      /// client id in the AccessibleEventNotifier queue
     sal_uInt32 mnClientId;
-//IAccessibility2 Implementation 2009-----
 	sal_uInt32	nFocusPageIndex;
 	::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow>			mxWindow;
-//-----IAccessibility2 Implementation 2009
 
     // internal
 	static const ::com::sun::star::uno::Sequence< sal_Int8 >&                                   getUnoTunnelId();
@@ -277,11 +267,9 @@
 
 	//=====  XServiceInfo  ====================================================
 
-//IAccessibility2 Implementation 2009-----
 	//----------------------------xAttribute----------------------------
 	virtual com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-//-----IAccessibility2 Implementation 2009
     /**	Returns an identifier for the implementation of this object.
     */
 	virtual ::rtl::OUString SAL_CALL
diff --git a/main/sd/source/ui/inc/DrawController.hxx b/main/sd/source/ui/inc/DrawController.hxx
index 2099642..fe81265 100644
--- a/main/sd/source/ui/inc/DrawController.hxx
+++ b/main/sd/source/ui/inc/DrawController.hxx
@@ -44,9 +44,7 @@
 #include <memory>
 #include <vector>
 #include <boost/scoped_ptr.hpp>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/drawing/XLayer.hpp>
-//-----IAccessibility2 Implementation 2009
 
 class SfxViewShell;
 class SdXImpressDocument;
@@ -105,10 +103,8 @@
         PROPERTY_ZOOMVALUE = 7,
         PROPERTY_VIEWOFFSET = 8,
 		PROPERTY_DRAWVIEWMODE = 9
-		//IAccessibility2 Implementation 2009-----
 		,PROPERTY_UPDATEACC = 10
 		,PROPERTY_PAGE_CHANGE = 11
-		//-----IAccessibility2 Implementation 2009
     };
 
     /** Create a new DrawController object for the given ViewShellBase.
@@ -154,14 +150,12 @@
         switch.
     */
     void BroadcastContextChange (void) const;
-//IAccessibility2 Implementation 2009-----
 	void NotifyAccUpdate();
 	void fireChangeLayer( ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XLayer>* pCurrentLayer ) throw();
 	// change the parameter to int
 	//void fireSwitchCurrentPage( String pageName) throw();
 	void fireSwitchCurrentPage( sal_Int32 pageIndex) throw();
 	::com::sun::star::uno::Reference< ::com::sun::star::drawing::XLayer>* mpCurrentLayer;
-//-----IAccessibility2 Implementation 2009
 
     /** Return a pointer to the ViewShellBase object that the DrawController
         is connected to.
diff --git a/main/sd/source/ui/inc/DrawDocShell.hxx b/main/sd/source/ui/inc/DrawDocShell.hxx
index 08e2c43..b22c60d 100644
--- a/main/sd/source/ui/inc/DrawDocShell.hxx
+++ b/main/sd/source/ui/inc/DrawDocShell.hxx
@@ -136,12 +136,10 @@
 
 	sal_Bool			        GotoBookmark(const String& rBookmark);
 
-//IAccessibility2 Implementation 2009-----
 	//Solution: realize multi-selection of objects
 	sal_Bool					GotoTreeBookmark(const String& rBookmark);
 	sal_Bool					IsMarked(  SdrObject* pObject  ); 
 	sal_Bool					GetObjectIsmarked(const String& rBookmark);
-//-----IAccessibility2 Implementation 2009
 	Bitmap                  GetPagePreviewBitmap(SdPage* pPage, sal_uInt16 nMaxEdgePixel);
 
     /** checks, if the given name is a valid new name for a slide
@@ -231,13 +229,11 @@
 	bool					mbOwnDocument;			// if true, we own mpDoc and will delete it in our d'tor
     void					Construct(bool bClipboard);
     virtual void            InPlaceActivate( sal_Bool bActive );
-//IAccessibility2 Implementation 2009-----
 public:
 	virtual void setDocAccTitle( const String& rTitle );
 	virtual const String getDocAccTitle() const;
 	virtual void setDocReadOnly( sal_Bool bReadOnly);
 	virtual sal_Bool getDocReadOnly() const;
-//-----IAccessibility2 Implementation 2009
 };
 
 #ifndef SV_DECL_DRAW_DOC_SHELL_DEFINED
diff --git a/main/sd/source/ui/inc/DrawViewShell.hxx b/main/sd/source/ui/inc/DrawViewShell.hxx
index 157f796..4edf183 100644
--- a/main/sd/source/ui/inc/DrawViewShell.hxx
+++ b/main/sd/source/ui/inc/DrawViewShell.hxx
@@ -252,12 +252,10 @@
 	sal_Bool		    IsSwitchPageAllowed() const;
 
 	sal_Bool		    GotoBookmark(const String& rBookmark);
-//IAccessibility2 Implementation 2009-----
 	//Solution: realize multi-selection of objects ,If object is marked , 
 	//the corresponding entry is set true ,else the corresponding entry is set false .
 	void                    FreshNavigatrEntry();
 	void                    FreshNavigatrTree();
-//-----IAccessibility2 Implementation 2009
 	void            MakeVisible(const Rectangle& rRect, ::Window& rWin);
 
 	virtual void    ReadFrameViewData(FrameView* pView);
@@ -378,10 +376,8 @@
 
     ::rtl::OUString GetSidebarContextName (void) const;
 
-//IAccessibility2 Implementation 2009-----
 	//move this method to ViewShell. 
 	//void	NotifyAccUpdate();
-//-----IAccessibility2 Implementation 2009
 protected:
 	DrawView*		mpDrawView;
 	SdPage* 		mpActualPage;
@@ -508,9 +504,7 @@
 
 	using ViewShell::Notify;
 
-//IAccessibility2 Implementation 2009-----
 	//const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & GetForms() const;
-//-----IAccessibility2 Implementation 2009
 	
 	::std::auto_ptr< AnnotationManager > mpAnnotationManager;
 	::std::auto_ptr< ViewOverlayManager > mpViewOverlayManager;
diff --git a/main/sd/source/ui/inc/OutlineViewShell.hxx b/main/sd/source/ui/inc/OutlineViewShell.hxx
index df41912..90c42e6 100644
--- a/main/sd/source/ui/inc/OutlineViewShell.hxx
+++ b/main/sd/source/ui/inc/OutlineViewShell.hxx
@@ -139,9 +139,7 @@
         ::com::sun::star::accessibility::XAccessible>
         CreateAccessibleDocumentView (::sd::Window* pWindow);
 
-//IAccessibility2 Implementation 2009-----
 	String m_StrOldPageName;
-//-----IAccessibility2 Implementation 2009
     /** Update the preview to show the specified page.
     */
 	virtual void UpdatePreview (SdPage* pPage, sal_Bool bInit = sal_False);
diff --git a/main/sd/source/ui/inc/SlideSorterViewShell.hxx b/main/sd/source/ui/inc/SlideSorterViewShell.hxx
index 7de3810..41ef0f2 100644
--- a/main/sd/source/ui/inc/SlideSorterViewShell.hxx
+++ b/main/sd/source/ui/inc/SlideSorterViewShell.hxx
@@ -174,10 +174,8 @@
     virtual ::com::sun::star::uno::Reference<
         ::com::sun::star::accessibility::XAccessible>
         CreateAccessibleDocumentView (::sd::Window* pWindow);
-	//IAccessibility2 Implementation 2009-----
 	// handle SlideSorterView specially because AccessibleSlideSorterView doesn't inherit from AccessibleDocumentViewBase
 	virtual void SwitchViewFireFocus( ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc );
-	//-----IAccessibility2 Implementation 2009
 
     SlideSorter& GetSlideSorter (void) const;
 
diff --git a/main/sd/source/ui/inc/SlideViewShell.hxx b/main/sd/source/ui/inc/SlideViewShell.hxx
index f233a18..296a454 100644
--- a/main/sd/source/ui/inc/SlideViewShell.hxx
+++ b/main/sd/source/ui/inc/SlideViewShell.hxx
@@ -140,10 +140,8 @@
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> CreateAccessibleDocumentView( ::sd::Window* pWindow );
 
     void            SelectionHasChanged();
-//IAccessibility2 Implementation 2009-----
     //Notify the SELECTION_CHANGE, SELECTION_ADD, SELECTION_REMOVE events
     void            SelectionHasChanged(sal_uInt16 nPage, sal_Bool bSelect);
-//-----IAccessibility2 Implementation 2009
     void            PageLayoutHasChanged();
     void            FocusHasChanged( sal_uInt16 nOldFocusPage, sal_uInt16 nNewFocusPage );
     void            PageVisibilityHasChanged( sal_uInt16 nPage, sal_Bool bVisible );
@@ -152,9 +150,7 @@
     */
     virtual void Activate (sal_Bool IsMDIActivate);
 
-//IAccessibility2 Implementation 2009-----
 	void SwitchViewFireFocus(::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc );
-//-----IAccessibility2 Implementation 2009
 protected:
 	virtual Size    GetOptimalSizePixel() const;
 	virtual long    VirtHScrollHdl(ScrollBar* pHScroll);
diff --git a/main/sd/source/ui/inc/TabControl.hxx b/main/sd/source/ui/inc/TabControl.hxx
index cdc34b5..7bc3f3e 100644
--- a/main/sd/source/ui/inc/TabControl.hxx
+++ b/main/sd/source/ui/inc/TabControl.hxx
@@ -42,10 +42,8 @@
       public DragSourceHelper, 
       public DropTargetHelper 
 {
-//IAccessibility2 Implementation 2009-----
 	//Solution: declare bIsMarked variable 
 	sal_uInt16    RrePageID;
-//-----IAccessibility2 Implementation 2009
 public:
     TabControl (DrawViewShell* pDrViewSh, ::Window* pParent);
     virtual ~TabControl (void);
diff --git a/main/sd/source/ui/inc/ViewShell.hxx b/main/sd/source/ui/inc/ViewShell.hxx
index 2b7b86e..e4a52d6 100644
--- a/main/sd/source/ui/inc/ViewShell.hxx
+++ b/main/sd/source/ui/inc/ViewShell.hxx
@@ -317,13 +317,11 @@
         ::com::sun::star::accessibility::XAccessible>
         CreateAccessibleDocumentView (::sd::Window* pWindow);
 
-//IAccessibility2 Implementation 2009-----
 	virtual void SwitchViewFireFocus( ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc );
 	virtual void SwitchActiveViewFireFocus( );
 	// Move these two methods from DrawViewShell to enable slide show view
 	void	NotifyAccUpdate();
 	void	fireSwitchCurrentPage(sal_Int32 pageIndex);
-//-----IAccessibility2 Implementation 2009
 	void SetWinViewPos(const Point& rWinPos, bool bUpdate);
 	Point GetWinViewPos() const;
 	Point GetViewOrigin() const;
diff --git a/main/sd/source/ui/inc/Window.hxx b/main/sd/source/ui/inc/Window.hxx
index db8ccf4..f91b9bd 100644
--- a/main/sd/source/ui/inc/Window.hxx
+++ b/main/sd/source/ui/inc/Window.hxx
@@ -202,9 +202,7 @@
     virtual ::com::sun::star::uno::Reference<
         ::com::sun::star::accessibility::XAccessible> 
         CreateAccessible (void);
-//IAccessibility2 Implementation 2009-----
 	virtual void SwitchView();
-//-----IAccessibility2 Implementation 2009
 
     XubString GetSurroundingText() const;
     Selection GetSurroundingTextSelection() const;
diff --git a/main/sd/source/ui/inc/animobjs.hrc b/main/sd/source/ui/inc/animobjs.hrc
index 003357a..30ed966 100644
--- a/main/sd/source/ui/inc/animobjs.hrc
+++ b/main/sd/source/ui/inc/animobjs.hrc
@@ -43,6 +43,4 @@
 #define LB_ADJUSTMENT 2
 #define LB_LOOP_COUNT 3
 #define GRP_ANIMATION_GROUP 2
-//IAccessibility2 Implementation 2009-----
 #define STR_DISPLAY	1
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sd/source/ui/inc/fuediglu.hxx b/main/sd/source/ui/inc/fuediglu.hxx
index d22e6f5..9da2b6a 100644
--- a/main/sd/source/ui/inc/fuediglu.hxx
+++ b/main/sd/source/ui/inc/fuediglu.hxx
@@ -54,14 +54,12 @@
 	virtual void Activate();		   // Function aktivieren
 	virtual void Deactivate();		   // Function deaktivieren
 
-//IAccessibility2 Implementation 2009-----
   //Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
   //and SHIFT+ENTER key to decide the postion and draw the new insert point
     virtual void ForcePointer(const MouseEvent* pMEvt = NULL);
 private:
     sal_Bool   bBeginInsertPoint;
     Point    oldPoint;
-//-----IAccessibility2 Implementation 2009
 protected:
 	FuEditGluePoints (
         ViewShell* pViewSh, 
diff --git a/main/sd/source/ui/inc/fusel.hxx b/main/sd/source/ui/inc/fusel.hxx
index 8610ed0..241e4b2 100644
--- a/main/sd/source/ui/inc/fusel.hxx
+++ b/main/sd/source/ui/inc/fusel.hxx
@@ -68,10 +68,8 @@
 	*/
 	virtual bool cancel();
 
-//IAccessibility2 Implementation 2009-----
 	//Solution: let mouse cursor move
 	virtual void ForcePointer(const MouseEvent* pMEvt = NULL);
-//-----IAccessibility2 Implementation 2009
 protected:
 	FuSelection (ViewShell* pViewSh, 
         ::sd::Window* pWin, 
@@ -104,14 +102,12 @@
             position then NULL is returned.
     */
     SdrObject* pickObject (const Point& rTestPoint);
-//IAccessibility2 Implementation 2009-----
   //Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point, 
   //and SHIFT+ENTER key to decide the postion and draw the new insert point
     sal_Bool   bBeginInsertPoint;
     Point    oldPoint;
   //Solution: let mouse cursor move
   sal_Bool   bMovedToCenterPoint;
-//-----IAccessibility2 Implementation 2009
 };
 
 } // end of namespace sd
diff --git a/main/sd/source/ui/inc/navigatr.hrc b/main/sd/source/ui/inc/navigatr.hrc
index 0f9aff4..a776638 100644
--- a/main/sd/source/ui/inc/navigatr.hrc
+++ b/main/sd/source/ui/inc/navigatr.hrc
@@ -21,9 +21,7 @@
 
 
 #define FLT_NAVIGATOR 575
-//IAccessibility2 Implementation 2009-----
 #define  STR_OBJECTS_TREE (FLT_NAVIGATOR+1)
-//-----IAccessibility2 Implementation 2009
 #define TLB_OBJECTS 1
 #define TBI_PEN 2
 #define TBI_FIRST 3
@@ -40,7 +38,5 @@
 
 #define IL_NAVIGATR 333
 #define ILH_NAVIGATR 444
-//IAccessibility2 Implementation 2009-----
 #define STR_DRAGMODE 1
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sd/source/ui/inc/navigatr.hxx b/main/sd/source/ui/inc/navigatr.hxx
index 338bc76..6db9a42 100644
--- a/main/sd/source/ui/inc/navigatr.hxx
+++ b/main/sd/source/ui/inc/navigatr.hxx
@@ -165,13 +165,11 @@
 	virtual void				DataChanged( const DataChangedEvent& rDCEvt );
 	void						SetDragImage();
 	void						ApplyImageList();
-//IAccessibility2 Implementation 2009-----
 public:	
 	//Solution: when object is marked , fresh the corresponding entry tree .
 	sd::DrawDocShell*             GetDrawDocShell(const SdDrawDocument*);
     void                        FreshTree ( const  SdDrawDocument* pDoc );
 	void                        FreshEntry( );
-//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sd/source/ui/inc/sdtreelb.hxx b/main/sd/source/ui/inc/sdtreelb.hxx
index cd85ec4..d86a5f9 100644
--- a/main/sd/source/ui/inc/sdtreelb.hxx
+++ b/main/sd/source/ui/inc/sdtreelb.hxx
@@ -36,10 +36,8 @@
 #include <svl/urlbmk.hxx>
 #include <tools/ref.hxx>
 #include "sdxfer.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <vector>
 using namespace std;
-//-----IAccessibility2 Implementation 2009
 #include <boost/scoped_ptr.hpp>
 #include <boost/function.hpp>
 
@@ -74,10 +72,8 @@
 	
 	static sal_Bool  SD_DLLPRIVATE bIsInDrag;      // static, falls der Navigator im ExecuteDrag geloescht wird
 
-//IAccessibility2 Implementation 2009-----
 	//Solution: set contenttree in SdNavigatorWin
     sal_Bool                           bisInSdNavigatorWin;
-//-----IAccessibility2 Implementation 2009
 public:
 
 	// nested class to implement the TransferableHelper
@@ -152,11 +148,9 @@
 	::sd::DrawDocShell* 		mpDropDocSh;
 	SdNavigatorWin*			mpDropNavWin;
 	SfxViewFrame*           mpFrame;
-	//IAccessibility2 Implementation 2009-----
 	vector<String>			maTreeItem;
 	sal_Bool					mbSaveTreeItemState;
 	String					maSelectionEntryText;
-	//-----IAccessibility2 Implementation 2009
 
 	// DragSourceHelper		
 	virtual void			StartDrag( sal_Int8 nAction, const Point& rPosPixel );
@@ -201,20 +195,16 @@
     
     using Window::GetDropTarget;
     virtual SvLBoxEntry* GetDropTarget (const Point& rLocation);
-//IAccessibility2 Implementation 2009-----
 	virtual void 	InitEntry(SvLBoxEntry*,const XubString&,const Image&,const Image&,SvLBoxButtonKind );
-//-----IAccessibility2 Implementation 2009
 
 public:
 							
 							SdPageObjsTLB( Window* pParent, const SdResId& rSdResId );
 							~SdPageObjsTLB();
-//IAccessibility2 Implementation 2009-----
    // helper function for 	GetEntryAltText and GetEntryLongDescription
     String			getAltLongDescText( SvLBoxEntry* pEntry , sal_Bool isAltText) const;
     String  		GetEntryAltText( SvLBoxEntry* pEntry ) const;
     String  		GetEntryLongDescription( SvLBoxEntry* pEntry ) const;
-//-----IAccessibility2 Implementation 2009
 	virtual void			SelectHdl();
 	virtual void			KeyInput( const KeyEvent& rKEvt );
 							
@@ -229,7 +219,6 @@
 	sal_Bool					HasSelectedChilds( const String& rName );
 	sal_Bool					SelectEntry( const String& rName );
 	String					GetSelectEntry();
-//IAccessibility2 Implementation 2009-----
 	//Solution: Mark Current Entry
 	void                    MarkCurEntry( const String& rName );
 	void                    SetSdNavigatorWinFlag(sal_Bool isInSdNavigatorWin){bisInSdNavigatorWin =isInSdNavigatorWin;};
@@ -238,7 +227,6 @@
 	void					Clear();
 	void					SetSaveTreeItemStateFlag(sal_Bool bState){mbSaveTreeItemState = bState;}
 	void					SaveExpandedTreeItemState(SvLBoxEntry* pEntry, vector<String>& vectTreeItem);
-//-----IAccessibility2 Implementation 2009
 	List*					GetSelectEntryList( sal_uInt16 nDepth );
 	SdDrawDocument*			GetBookmarkDoc(SfxMedium* pMedium = NULL);
 	::sd::DrawDocShell*			GetDropDocSh() { return(mpDropDocSh); }
diff --git a/main/sd/source/ui/inc/strings.hrc b/main/sd/source/ui/inc/strings.hrc
index e4f13ee..fbda370 100644
--- a/main/sd/source/ui/inc/strings.hrc
+++ b/main/sd/source/ui/inc/strings.hrc
@@ -496,9 +496,7 @@
 #define STR_NAVIGATOR_SHOW_NAMED_SHAPES                 (RID_APP_START+718)
 #define STR_NAVIGATOR_SHOW_ALL_SHAPES                   (RID_APP_START+719)
 #define STR_NAVIGATOR_SHAPE_BASE_NAME                   (RID_APP_START+720)
-//IAccessibility2 Implementation 2009-----
 #define STR_ACC_DIALOG_DESC				(RID_APP_START + 730)
-//-----IAccessibility2 Implementation 2009
 
 #define STR_RESET_LAYOUT								(RID_APP_START+721)
 #define STR_INSERT_TABLE								(RID_APP_START+722)
diff --git a/main/sd/source/ui/inc/tpaction.hrc b/main/sd/source/ui/inc/tpaction.hrc
index cf51c7b..20221ec 100644
--- a/main/sd/source/ui/inc/tpaction.hrc
+++ b/main/sd/source/ui/inc/tpaction.hrc
@@ -45,6 +45,4 @@
 #define FT_TREE 5
 #define TP_ANIMATION 787
 #define TP_ANIMATION_ACTION 789
-//IAccessibility2 Implementation 2009-----
 #define STR_PATHNAME 1
- //-----IAccessibility2 Implementation 2009
diff --git a/main/sd/source/ui/slideshow/showwin.cxx b/main/sd/source/ui/slideshow/showwin.cxx
index fb0c339..80e5dad 100644
--- a/main/sd/source/ui/slideshow/showwin.cxx
+++ b/main/sd/source/ui/slideshow/showwin.cxx
@@ -738,7 +738,6 @@
 		GetChild( nChild )->Show( sal_True );
 }
 
-//IAccessibility2 Implementation 2009-----
 // Overload the sd::Window's CreateAccessible to create a different accessible object
 ::com::sun::star::uno::Reference<
     ::com::sun::star::accessibility::XAccessible>
@@ -761,5 +760,4 @@
 	return ::Window::CreateAccessible ();
     }
 }
-//-----IAccessibility2 Implementation 2009
 } // end of namespace sd
diff --git a/main/sd/source/ui/slideshow/showwindow.hxx b/main/sd/source/ui/slideshow/showwindow.hxx
index 53f3947..c4134c1 100644
--- a/main/sd/source/ui/slideshow/showwindow.hxx
+++ b/main/sd/source/ui/slideshow/showwindow.hxx
@@ -102,7 +102,6 @@
 	virtual void	MouseButtonDown(const MouseEvent& rMEvt);
 	virtual void	Paint(const Rectangle& rRect);
 	virtual long	Notify(NotifyEvent& rNEvt);
-	//IAccessibility2 Implementation 2009-----
 	//Overload the sd::Window's CreateAccessible to create a different accessible object
     virtual ::com::sun::star::uno::Reference<
         ::com::sun::star::accessibility::XAccessible> 
diff --git a/main/sd/source/ui/slideshow/slideshow.cxx b/main/sd/source/ui/slideshow/slideshow.cxx
index 07b1f77..d2f65ef 100644
--- a/main/sd/source/ui/slideshow/slideshow.cxx
+++ b/main/sd/source/ui/slideshow/slideshow.cxx
@@ -818,12 +818,10 @@
                     }
 				}
 			}
-			//IAccessibility2 Implementation 2009-----
 			//Fire the acc focus event when focus is switched back. The above method mpCurrentViewShellBase->GetWindow()->GrabFocus() will
 			//set focus to WorkWindow instead of the sd::window, so here call Shell's method to fire the focus event
 			if (pViewShell)
 				pViewShell->SwitchActiveViewFireFocus();
-			//-----IAccessibility2 Implementation 2009
 		}
 		mpCurrentViewShellBase = 0;
 	}
@@ -1050,10 +1048,8 @@
 			if( mxController->startShow(mxCurrentSettings.get()) )
 			{
 				pShell->Resize();
-				//IAccessibility2 Implementation 2009-----
 				// Defer the sd::ShowWindow's GrabFocus to here. so that the accessible event can be fired correctly. 
 				pShell->GetActiveWindow()->GrabFocus();
-				//-----IAccessibility2 Implementation 2009
 			}
 			else
 			{
@@ -1228,13 +1224,11 @@
 			
 		if( !bSuccess )	
 			end();
-		//IAccessibility2 Implementation 2009-----
 		else
 		{
 			if(mpCurrentViewShellBase)
 				mpCurrentViewShellBase->GetWindow()->GrabFocus();
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 }
 
diff --git a/main/sd/source/ui/slideshow/slideshowimpl.cxx b/main/sd/source/ui/slideshow/slideshowimpl.cxx
index 30c75ab..316872a 100644
--- a/main/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/main/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -1096,10 +1096,8 @@
 				pBindings->Invalidate( SID_REHEARSE_TIMINGS );
 			}
 
-			//IAccessibility2 Implementation 2009-----
 			// Defer the sd::ShowWindow's GrabFocus to SlideShow::activate. so that the accessible event can be fired correctly. 
 			//mpShowWindow->GrabFocus();
-			//-----IAccessibility2 Implementation 2009
 
 			std::vector<beans::PropertyValue> aProperties;
 			aProperties.reserve( 4 );
@@ -1475,7 +1473,6 @@
 			pBindings->Invalidate( SID_NAVIGATOR_PAGENAME );
 		}
 	}
-	//IAccessibility2 Implementation 2009-----
 	// send out page change event and notity to update all acc info for current page
 	if (mpViewShell)
 	{
@@ -1483,7 +1480,6 @@
 		mpViewShell->fireSwitchCurrentPage(currentPageIndex);
 		mpViewShell->NotifyAccUpdate();
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 // ---------------------------------------------------------
diff --git a/main/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx b/main/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
index 3dedafc..da1d4da 100644
--- a/main/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
+++ b/main/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
@@ -285,10 +285,8 @@
 	{
         mrSlideSorter.GetView().SetState(rpDescriptor, model::PageDescriptor::ST_Focused, false);
 
-		//IAccessibility2 Implementation 2009-----
 		// Hide focus should also fire the focus event, Currently, only accessibility add the focus listener
 		NotifyFocusChangeListeners();
-		//-----IAccessibility2 Implementation 2009
 	}
 }
 
diff --git a/main/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx b/main/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
index 430db3c..a7dd5b7 100644
--- a/main/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
+++ b/main/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
@@ -215,12 +215,10 @@
 {
     ViewShell::Init(bIsMainViewShell);
 
-//IAccessibility2 Implementation 2009-----
 	// since the updatePageList will show focus, the window.show() must be called ahead. This show is deferred from Init()
 	::sd::Window* pActiveWindow = GetActiveWindow();
 	if (pActiveWindow)
 		pActiveWindow->Show();
-//-----IAccessibility2 Implementation 2009
     mpSlideSorter->GetModel().UpdatePageList();
 
     if (mpContentWindow.get() != NULL)
@@ -302,7 +300,6 @@
         pWindow);
 }
 
-//IAccessibility2 Implementation 2009-----
 void SlideSorterViewShell::SwitchViewFireFocus(::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc )
 {
 	if (xAcc.get())
@@ -314,7 +311,6 @@
 		}
 	}
 }
-//-----IAccessibility2 Implementation 2009
 
 
 SlideSorter& SlideSorterViewShell::GetSlideSorter (void) const
diff --git a/main/sd/source/ui/unoidl/DrawController.cxx b/main/sd/source/ui/unoidl/DrawController.cxx
index 2df3908..4427155 100644
--- a/main/sd/source/ui/unoidl/DrawController.cxx
+++ b/main/sd/source/ui/unoidl/DrawController.cxx
@@ -539,7 +539,6 @@
         }
     }
 }
-//IAccessibility2 Implementation 2009-----
 void DrawController::NotifyAccUpdate()
 {
 	sal_Int32 nHandle = PROPERTY_UPDATEACC;
@@ -577,7 +576,6 @@
 		sal_Int32 nHandles = PROPERTY_PAGE_CHANGE;
 		fire( &nHandles, &aNewValue, &aOldValue, 1, sal_False );
 }
-//-----IAccessibility2 Implementation 2009
 
 void DrawController::FirePropertyChange (
     sal_Int32 nHandle,
@@ -786,7 +784,6 @@
 			PROPERTY_DRAWVIEWMODE,
             ::getCppuType((const ::com::sun::star::awt::Point*)0),
             beans::PropertyAttribute::BOUND|beans::PropertyAttribute::READONLY|beans::PropertyAttribute::MAYBEVOID ));
-	    //IAccessibility2 Implementation 2009-----
 	// add new property to update current page's acc information
     rProperties.push_back(
         beans::Property( OUString( RTL_CONSTASCII_USTRINGPARAM("UpdateAcc") ),
@@ -798,7 +795,6 @@
 			PROPERTY_PAGE_CHANGE,
             ::getCppuType((const sal_Int16*)0),
             beans::PropertyAttribute::BOUND ));	
-	    //-----IAccessibility2 Implementation 2009
 }
 
 
diff --git a/main/sd/source/ui/unoidl/SdUnoDrawView.cxx b/main/sd/source/ui/unoidl/SdUnoDrawView.cxx
index 98f6733..45b8481 100644
--- a/main/sd/source/ui/unoidl/SdUnoDrawView.cxx
+++ b/main/sd/source/ui/unoidl/SdUnoDrawView.cxx
@@ -151,9 +151,7 @@
             xCurrentLayer = pManager->GetLayer (pLayer);
     }
     while (false);
-//IAccessibility2 Implementation 2009-----
 	mrController.mpCurrentLayer = &(xCurrentLayer) ;
-//-----IAccessibility2 Implementation 2009
 
     return xCurrentLayer;
 }
diff --git a/main/sd/source/ui/unoidl/unosrch.cxx b/main/sd/source/ui/unoidl/unosrch.cxx
index a2717e3..4c97144 100644
--- a/main/sd/source/ui/unoidl/unosrch.cxx
+++ b/main/sd/source/ui/unoidl/unosrch.cxx
@@ -489,7 +489,7 @@
 	sal_Int32* pConvertPara = new sal_Int32[nTextLen+2];
 
 	int ndbg = 0;
-	const sal_Unicode* pText = aText;
+	const sal_Unicode* pText = aText.getStr();
 
 	sal_Int32* pPos = pConvertPos;
 	sal_Int32* pPara = pConvertPara;
diff --git a/main/sd/source/ui/view/Outliner.cxx b/main/sd/source/ui/view/Outliner.cxx
index fb63e7f..0b3357a 100644
--- a/main/sd/source/ui/view/Outliner.cxx
+++ b/main/sd/source/ui/view/Outliner.cxx
@@ -535,7 +535,6 @@
             else
                 mnStartPageIndex = (sal_uInt16)-1;
         }
-//IAccessibility2 Implementation 2009-----
 	if ( Application::IsAccessibilityEnabled() )
 	{
 		SvxSearchDialog* pSearchDlg = 
@@ -544,7 +543,6 @@
 		pSearchDlg->SetDocWin( pViewShell->GetActiveWindow() );
 		pSearchDlg->SetSrchFlag();
 	}
-//-----IAccessibility2 Implementation 2009
         }
     else
         mpDrawDocument->GetDocSh()->SetWaitCursor( sal_False );
diff --git a/main/sd/source/ui/view/drviews4.cxx b/main/sd/source/ui/view/drviews4.cxx
index 39641cc..f5a6950 100644
--- a/main/sd/source/ui/view/drviews4.cxx
+++ b/main/sd/source/ui/view/drviews4.cxx
@@ -79,9 +79,7 @@
 // #97016# IV
 #include <svx/svditer.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <navigatr.hxx>
-//-----IAccessibility2 Implementation 2009
 namespace sd {
 
 #define PIPETTE_RANGE 0
@@ -230,14 +228,12 @@
 		else
 		{
 			bRet = ViewShell::KeyInput(rKEvt, pWin);
-//IAccessibility2 Implementation 2009-----
     		//Solution: If object is marked , the corresponding entry is set true ,
     		//else the corresponding entry is set false .
        	    if(KEY_TAB == rKEvt.GetKeyCode().GetCode())
        	    {
    			   FreshNavigatrTree();
        	    }
-//-----IAccessibility2 Implementation 2009
 		}
 	}
 
@@ -282,7 +278,6 @@
         mbIsRulerDrag = sal_True;
 	}
 }
-//IAccessibility2 Implementation 2009-----
 //Solution: If object is marked , the corresponding entry is set true ,
 //else the corresponding entry is set false .
 void DrawViewShell::FreshNavigatrEntry()
@@ -308,7 +303,6 @@
 				pNavWin->FreshTree( GetDoc() );
 		}
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |* MouseButtonDown event
@@ -335,11 +329,9 @@
 	{
 		ViewShell::MouseButtonDown(rMEvt, pWin);
 
-//IAccessibility2 Implementation 2009-----
 		//Solution: If object is marked , the corresponding entry is set true ,
 		//else the corresponding entry is set false .
               FreshNavigatrTree();
-//-----IAccessibility2 Implementation 2009
 		if ( mbPipette )
 			( (SvxBmpMask*) GetViewFrame()->GetChildWindow( SvxBmpMaskChildWindow::GetChildWindowId() )->GetWindow() )->PipetteClicked();
 	}
@@ -509,11 +501,9 @@
 		}
 		else
     		ViewShell::MouseButtonUp(rMEvt, pWin);
-//IAccessibility2 Implementation 2009-----
 		//Solution: If object is marked , the corresponding entry is set true ,
 		//else the corresponding entry is set false .
 		FreshNavigatrTree();
-//-----IAccessibility2 Implementation 2009
 	}
 }
 
diff --git a/main/sd/source/ui/view/drviews5.cxx b/main/sd/source/ui/view/drviews5.cxx
index 72039d6..2035db2 100644
--- a/main/sd/source/ui/view/drviews5.cxx
+++ b/main/sd/source/ui/view/drviews5.cxx
@@ -705,7 +705,6 @@
             // Tell the draw view and the tab control of the new active layer.
             mpDrawView->SetActiveLayer (pBar->GetPageText (pBar->GetPageId ((sal_uInt16)nIndex)));
             pBar->SetCurPageId (pBar->GetPageId ((sal_uInt16)nIndex));
-		//IAccessibility2 Implementation 2009-----
 		SdUnoDrawView* pUnoDrawView = new SdUnoDrawView (
             GetViewShellBase().GetDrawController(),
             *this,
@@ -713,7 +712,6 @@
 		::com::sun::star::uno::Reference< ::com::sun::star::drawing::XLayer> rLayer = pUnoDrawView->getActiveLayer();
 		GetViewShellBase().GetDrawController().fireChangeLayer( &rLayer );
 		delete pUnoDrawView;
-		//-----IAccessibility2 Implementation 2009
         }
     }
 }
diff --git a/main/sd/source/ui/view/outlnvsh.cxx b/main/sd/source/ui/view/outlnvsh.cxx
index ebdc8d2..aca12fc 100644
--- a/main/sd/source/ui/view/outlnvsh.cxx
+++ b/main/sd/source/ui/view/outlnvsh.cxx
@@ -235,9 +235,7 @@
 	Construct(GetDocSh());
 
     SetContextName(sfx2::sidebar::EnumContext::GetContextName(sfx2::sidebar::EnumContext::Context_OutlineText));
-//IAccessibility2 Implementation 2009-----
 	m_StrOldPageName.EmptyString();
-//-----IAccessibility2 Implementation 2009
 }
 
 /*************************************************************************
@@ -1475,14 +1473,12 @@
 
 		aLayoutStr = pPage->GetLayoutName();
 		aLayoutStr.Erase( aLayoutStr.SearchAscii( SD_LT_SEPARATOR ) );
-		//IAccessibility2 Implementation 2009-----
 			//Now, CurrentPage property change is already sent for DrawView and OutlineView, so it is not necessary to send again here
 			if(m_StrOldPageName!=aPageStr)
 			{
 				GetViewShellBase().GetDrawController().fireSwitchCurrentPage(nPos);
 				m_StrOldPageName = aPageStr;
 			}	
-		//-----IAccessibility2 Implementation 2009
 	}
 	rSet.Put( SfxStringItem( SID_STATUS_PAGE, aPageStr ) );
 	rSet.Put( SfxStringItem( SID_STATUS_LAYOUT, aLayoutStr ) );
diff --git a/main/sd/source/ui/view/sdwindow.cxx b/main/sd/source/ui/view/sdwindow.cxx
index 14dd5b2..5924ab5 100644
--- a/main/sd/source/ui/view/sdwindow.cxx
+++ b/main/sd/source/ui/view/sdwindow.cxx
@@ -45,9 +45,7 @@
 #include "AccessibleDrawDocumentView.hxx"
 #include "WindowUpdater.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <vcl/svapp.hxx>
-//-----IAccessibility2 Implementation 2009
 
 namespace sd {
 
@@ -1164,7 +1162,6 @@
     ::com::sun::star::accessibility::XAccessible>
     Window::CreateAccessible (void)
 {
-//IAccessibility2 Implementation 2009-----
 	// If current viewshell is PresentationViewShell, just return empty because the correct ShowWin will be created later. 
 	if (mpViewShell && mpViewShell->ISA(PresentationViewShell))
 	{
@@ -1176,13 +1173,11 @@
 		return xAcc;
 	}
     if (mpViewShell != NULL)
-	//return mpViewShell->CreateAccessibleDocumentView (this);
 	{
 		xAcc = mpViewShell->CreateAccessibleDocumentView (this);
 		SetAccessible(xAcc);
 		return xAcc;
 	}
-//-----IAccessibility2 Implementation 2009
     else
     {
         OSL_TRACE ("::sd::Window::CreateAccessible: no view shell");
@@ -1190,7 +1185,6 @@
     }
 }
 
-//IAccessibility2 Implementation 2009-----
 // MT: Removed Windows::SwitchView() introduced with IA2 CWS.
 // There are other notifications for this when the active view has chnaged, so please update the code to use that event mechanism
 void Window::SwitchView()
@@ -1204,7 +1198,6 @@
 		mpViewShell->SwitchViewFireFocus(GetAccessible(sal_False));
 	}
 }
-//-----IAccessibility2 Implementation 2009
 
 XubString Window::GetSurroundingText() const
 {
diff --git a/main/sd/source/ui/view/tabcontr.cxx b/main/sd/source/ui/view/tabcontr.cxx
index 275e48f..0180316 100644
--- a/main/sd/source/ui/view/tabcontr.cxx
+++ b/main/sd/source/ui/view/tabcontr.cxx
@@ -137,12 +137,10 @@
 		Point aPos = PixelToLogic( rMEvt.GetPosPixel() );
 		sal_uInt16 aPageId = GetPageId(aPos);
 
-//IAccessibility2 Implementation 2009-----
 		//Solution: initialize
         if(RrePageID!=aPageId)
 			pDrViewSh->FreshNavigatrEntry(); 
 		RrePageID=aPageId;
-//-----IAccessibility2 Implementation 2009
 		if (aPageId == 0)
 		{
 			SfxDispatcher* pDispatcher = pDrViewSh->GetViewFrame()->GetDispatcher();
diff --git a/main/sd/source/ui/view/viewshel.cxx b/main/sd/source/ui/view/viewshel.cxx
index 6f91a1f..22e285d 100644
--- a/main/sd/source/ui/view/viewshel.cxx
+++ b/main/sd/source/ui/view/viewshel.cxx
@@ -95,9 +95,7 @@
 #include <editeng/eeitem.hxx>
 #include <svl/poolitem.hxx>
 #include <glob.hrc>
-//IAccessibility2 Implementation 2009-----
 #include "AccessibleDocumentViewBase.hxx"
-//-----IAccessibility2 Implementation 2009
 #ifndef SO2_DECL_SVINPLACEOBJECT_DEFINED
 #define SO2_DECL_SVINPLACEOBJECT_DEFINED
 SO2_DECL_REF(SvInPlaceObject)
@@ -481,9 +479,7 @@
 		bReturn = (sal_Bool)GetViewShell()->KeyInput(rKEvt);
 	}
 
-//IAccessibility2 Implementation 2009-----
 	sal_Int32 OriCount = GetView()->GetMarkedObjectList().GetMarkCount();
-//-----IAccessibility2 Implementation 2009
 	if(!bReturn)
 	{
 		rtl::Reference< SlideShow > xSlideShow( SlideShow::GetSlideShow( GetViewShellBase() ) );
@@ -513,14 +509,12 @@
 			}
 		}
 	}
-//IAccessibility2 Implementation 2009-----
 	sal_Int32 EndCount = GetView()->GetMarkedObjectList().GetMarkCount();
 	// Here, oriCount or endCount must have one value=0, another value > 0, then to switch focus between Document and shape objects
 	if(bReturn &&  (OriCount + EndCount > 0) && (OriCount * EndCount == 0))
 	{
 		SwitchActiveViewFireFocus();
 	}
-//-----IAccessibility2 Implementation 2009
 
 	if(!bReturn && GetActiveWindow())
 	{
@@ -1637,7 +1631,6 @@
     return true;
 }
 
-//IAccessibility2 Implementation 2009-----
 void ViewShell::SwitchViewFireFocus(::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc )
 {
 	if (xAcc.get())
@@ -1666,7 +1659,6 @@
 	GetViewShellBase().GetDrawController().NotifyAccUpdate();
 }
 
-//-----IAccessibility2 Implementation 2009
 
 } // end of namespace sd
 
diff --git a/main/sfx2/inc/sfx2/sfx.hrc b/main/sfx2/inc/sfx2/sfx.hrc
index e545639..cf48bbb 100644
--- a/main/sfx2/inc/sfx2/sfx.hrc
+++ b/main/sfx2/inc/sfx2/sfx.hrc
@@ -250,9 +250,7 @@
 #define STR_ERRUNOEVENTBINDUNG              (RID_SFX_START+119)
 #define STR_SHARED                          (RID_SFX_START+120)
 #define RID_XMLSEC_DOCUMENTSIGNED           (RID_SFX_START+121)
-// IAccessibility2 implementation 2009. ------ 
 #define STR_ACCTITLE_PRODUCTIVITYTOOLS		(RID_SFX_START+157)
-// ------ IAccessibility2 implementation 2009.
  
 //=========================================================================
 
diff --git a/main/sfx2/inc/sfx2/sfxuno.hxx b/main/sfx2/inc/sfx2/sfxuno.hxx
index 5b9e692..fb32072 100644
--- a/main/sfx2/inc/sfx2/sfxuno.hxx
+++ b/main/sfx2/inc/sfx2/sfxuno.hxx
@@ -105,11 +105,6 @@
 
 #define FrameSearchFlags			sal_Int32
 
-// Macros to convert string -> unicode and unicode -> string.
-// We use UTF8 everytime. Its the best way to do this!
-#define S2U(STRING) 							::rtl::OStringToOUString(STRING, RTL_TEXTENCODING_UTF8)
-#define U2S(STRING)								::rtl::OUStringToOString(STRING, RTL_TEXTENCODING_UTF8)
-
 // Macro to define const unicode a'la "..."
 // It's better then "OUString::createFromAscii(...)" !!!
 #define	DEFINE_CONST_UNICODE(CONSTASCII)		UniString(RTL_CONSTASCII_USTRINGPARAM(CONSTASCII))
diff --git a/main/sfx2/source/appl/app.cxx b/main/sfx2/source/appl/app.cxx
index abf8189..4717b35 100644
--- a/main/sfx2/source/appl/app.cxx
+++ b/main/sfx2/source/appl/app.cxx
@@ -553,8 +553,7 @@
 
 ResMgr* SfxApplication::CreateResManager( const char *pPrefix )
 {
-    String aMgrName = String::CreateFromAscii( pPrefix );
-    return ResMgr::CreateResMgr(U2S(aMgrName));
+    return ResMgr::CreateResMgr( pPrefix);
 }
 
 //---------------------------------------------------------------------
diff --git a/main/sfx2/source/appl/appdde.cxx b/main/sfx2/source/appl/appdde.cxx
index 6c5c87c..be2c781 100644
--- a/main/sfx2/source/appl/appdde.cxx
+++ b/main/sfx2/source/appl/appdde.cxx
@@ -54,14 +54,14 @@
 
 String SfxDdeServiceName_Impl( const String& sIn )
 {
-	ByteString sTemp = U2S( sIn );
+	ByteString sTemp( sIn, RTL_TEXTENCODING_UTF8 );
 	ByteString sReturn;
 
 	for ( sal_uInt16 n = sTemp.Len(); n; --n )
 		if ( sTemp.Copy( n-1, 1 ).IsAlphaNumericAscii() )
 			sReturn += sTemp.GetChar(n-1);
 
-	return S2U( sReturn );
+	return String( sReturn, RTL_TEXTENCODING_UTF8 );
 }
 
 
@@ -159,7 +159,7 @@
 			}
 			aData.EraseAllChars( 0x0022 );
 			ApplicationAddress aAddr;
-			rAppEvent = ApplicationEvent( String(), aAddr, U2S(rEvent), aData );
+			rAppEvent = ApplicationEvent( String(), aAddr, ByteString( rEvent, RTL_TEXTENCODING_UTF8), aData );
 			return sal_True;
 		}
 	}
diff --git a/main/sfx2/source/appl/sfxhelp.cxx b/main/sfx2/source/appl/sfxhelp.cxx
index 335bb39..3ab4798 100644
--- a/main/sfx2/source/appl/sfxhelp.cxx
+++ b/main/sfx2/source/appl/sfxhelp.cxx
@@ -274,7 +274,7 @@
                         ::rtl::OUString aCodedList;
                         if ( pValues[nProp] >>= aCodedList )
                         {
-                            rtl::OString aTmp( aCodedList, aCodedList.getLength(), RTL_TEXTENCODING_UTF8 );
+                            const rtl::OString aTmp( OUStringToOString( aCodedList, RTL_TEXTENCODING_UTF8 ));
                             sal_Int32 nIndex = 0;
                             do
                             {
diff --git a/main/sfx2/source/appl/shutdownicon.cxx b/main/sfx2/source/appl/shutdownicon.cxx
index 1b3a7fa..c81707e 100644
--- a/main/sfx2/source/appl/shutdownicon.cxx
+++ b/main/sfx2/source/appl/shutdownicon.cxx
@@ -904,10 +904,10 @@
 													 osl_getThreadTextEncoding() );
 		OString aShortcutUnx = OUStringToOString( aShortcut,
 												  osl_getThreadTextEncoding() );
-		if ((0 != symlink(aDesktopFileUnx, aShortcutUnx)) && (errno == EEXIST)) 
+		if ((0 != symlink( aDesktopFileUnx.getStr(), aShortcutUnx.getStr())) && (errno == EEXIST)) 
 		{ 
-		unlink(aShortcutUnx); 
-		symlink(aDesktopFileUnx, aShortcutUnx); 
+		unlink( aShortcutUnx.getStr()); 
+		symlink( aDesktopFileUnx.getStr(), aShortcutUnx.getStr()); 
 		}
 
 		ShutdownIcon *pIcon = ShutdownIcon::createInstance();
diff --git a/main/sfx2/source/appl/shutdowniconunx.cxx b/main/sfx2/source/appl/shutdowniconunx.cxx
index 1a1d943..14a844c 100644
--- a/main/sfx2/source/appl/shutdowniconunx.cxx
+++ b/main/sfx2/source/appl/shutdowniconunx.cxx
@@ -176,7 +176,7 @@
     GtkWidget *pImage = gtk_image_new_from_pixbuf( pPixbuf );
     g_object_unref( G_OBJECT( pPixbuf ) );
 
-	GtkWidget *pMenuItem = gtk_image_menu_item_new_with_label( aLabel );
+	GtkWidget* pMenuItem = gtk_image_menu_item_new_with_label( aLabel.getStr() );
 	gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM( pMenuItem ), pImage );
 	g_signal_connect_data( pMenuItem, "activate", pFnCallback, pURL,
 						   oustring_delete, GConnectFlags(0));
@@ -224,11 +224,9 @@
 {
 	OString aUtfLabel = rtl::OUStringToOString (aLabel, RTL_TEXTENCODING_UTF8 );
 
-	GtkWidget *pImage;
-	pImage = gtk_image_new_from_stock( stock_id, GTK_ICON_SIZE_MENU );
+	GtkWidget* pImage = gtk_image_new_from_stock( stock_id, GTK_ICON_SIZE_MENU );
 
-	GtkWidget *pMenuItem;
-	pMenuItem = gtk_image_menu_item_new_with_label( aUtfLabel );
+	GtkWidget* pMenuItem = gtk_image_menu_item_new_with_label( aUtfLabel.getStr() );
 	gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM( pMenuItem ), pImage );
 
 	gtk_menu_shell_append( pMenuShell, pMenuItem );
diff --git a/main/sfx2/source/bastyp/mieclip.cxx b/main/sfx2/source/bastyp/mieclip.cxx
index 0d0a323..63fc641 100644
--- a/main/sfx2/source/bastyp/mieclip.cxx
+++ b/main/sfx2/source/bastyp/mieclip.cxx
@@ -63,7 +63,7 @@
 			else if( sTmp == "EndHTML" )
 				nEnd = (sal_uIntPtr)(sLine.Erase( 0, nIndex ).ToInt32());
 			else if( sTmp == "SourceURL" )
-				sBaseURL = String(S2U(sLine.Erase( 0, nIndex )));
+				sBaseURL = String( sLine.Erase( 0, nIndex ), RTL_TEXTENCODING_UTF8);
 
 			if( nEnd && nStt &&
 				( sBaseURL.Len() || rStream.Tell() >= nStt ))
diff --git a/main/sfx2/source/bastyp/sfxhtml.cxx b/main/sfx2/source/bastyp/sfxhtml.cxx
index 0242be1..da1d627 100644
--- a/main/sfx2/source/bastyp/sfxhtml.cxx
+++ b/main/sfx2/source/bastyp/sfxhtml.cxx
@@ -325,7 +325,7 @@
 		sal_Char* pBuffer = sBuffer.AllocBuffer(nLen);
 		aStream.Seek( 0 );
 		aStream.Read((void*)pBuffer, nLen);
-		rStr = String( S2U(pBuffer) );
+		rStr = String( pBuffer, RTL_TEXTENCODING_UTF8);
 	}
 
 	delete pDLMedium;
diff --git a/main/sfx2/source/control/macro.cxx b/main/sfx2/source/control/macro.cxx
index 2bd84bf..efbe4f0 100644
--- a/main/sfx2/source/control/macro.cxx
+++ b/main/sfx2/source/control/macro.cxx
@@ -334,7 +334,7 @@
 		aStatement += '.';
 
 	// der Name des Slots ist der Name der Methode / des Properties
-	aStatement += String::CreateFromAscii(rSlot.pName);
+	aStatement += String( rtl::OStringToOUString( rSlot.pName, RTL_TEXTENCODING_UTF8));
 	if ( rSlot.IsMode(SFX_SLOT_METHOD) )
 		aStatement += DEFINE_CONST_UNICODE("( ");
 	else
diff --git a/main/sfx2/source/control/msg.cxx b/main/sfx2/source/control/msg.cxx
index 3d607e8..05e9a30 100644
--- a/main/sfx2/source/control/msg.cxx
+++ b/main/sfx2/source/control/msg.cxx
@@ -65,7 +65,6 @@
 
 ::rtl::OUString SfxSlot::GetCommandString() const
 { 
-    rtl::OString aCmd(GetCommand());
-    return rtl::OUString( aCmd, aCmd.getLength(), RTL_TEXTENCODING_UTF8 );
+    return rtl::OStringToOUString( GetCommand(), RTL_TEXTENCODING_UTF8);
 }
 
diff --git a/main/sfx2/source/control/shell.cxx b/main/sfx2/source/control/shell.cxx
index a8f40b9..7cf6d78 100644
--- a/main/sfx2/source/control/shell.cxx
+++ b/main/sfx2/source/control/shell.cxx
@@ -1115,7 +1115,7 @@
         pNewSlot->fnExec = SFX_STUB_PTR(SfxShell,VerbExec);
         pNewSlot->fnState = SFX_STUB_PTR(SfxShell,VerbState);
         pNewSlot->pType = 0; HACK(SFX_TYPE(SfxVoidItem))
-        pNewSlot->pName = U2S(aVerbs[n].VerbName);
+        pNewSlot->pName = OUStringToOString( aVerbs[n].VerbName, RTL_TEXTENCODING_UTF8).getStr(); // TODO: life time of temp is suspicious!!!
         pNewSlot->pLinkedSlot = 0;
         pNewSlot->nArgDefCount = 0;
         pNewSlot->pFirstArgDef = 0;
diff --git a/main/sfx2/source/dialog/dinfdlg.hrc b/main/sfx2/source/dialog/dinfdlg.hrc
index 940e32b..a6fff86 100644
--- a/main/sfx2/source/dialog/dinfdlg.hrc
+++ b/main/sfx2/source/dialog/dinfdlg.hrc
@@ -149,9 +149,7 @@
 #define STR_HEADER_VALUE    92
 #define STR_HEADER_ACTION   93
 
-//IAccessibility2 Implementation 2009-----
 #define EDIT_FILE_NAME		94
-//-----IAccessibility2 Implementation 2009
 
 #define PB_OK                   100
 #define PB_CANCEL               101
diff --git a/main/sfx2/source/dialog/passwd.hrc b/main/sfx2/source/dialog/passwd.hrc
index c2a2349..a4a49f8 100644
--- a/main/sfx2/source/dialog/passwd.hrc
+++ b/main/sfx2/source/dialog/passwd.hrc
@@ -42,9 +42,7 @@
 #define FT_PASSWD_CONFIRM2 27
 #define ED_PASSWD_CONFIRM2 28
 
-//IAccessibility2 Implementation 2009-----
 #define TEXT_PASSWD		31
-//-----IAccessibility2 Implementation 2009
 #endif
 
 // ******************************************************************* EOF
diff --git a/main/sfx2/source/dialog/tabdlg.cxx b/main/sfx2/source/dialog/tabdlg.cxx
index e841e15..1dc2401 100644
--- a/main/sfx2/source/dialog/tabdlg.cxx
+++ b/main/sfx2/source/dialog/tabdlg.cxx
@@ -748,7 +748,6 @@
 	if ( bShow )
 		Show();
 
-// IAccessibility2 implementation 2009
 	if ( IsVisible() && ( !HasChildPathFocus() || HasFocus() ) )
 		GrabFocusToFirstControl();
 }
diff --git a/main/sfx2/source/dialog/templdlg.hrc b/main/sfx2/source/dialog/templdlg.hrc
index a0fc753..1797c70 100644
--- a/main/sfx2/source/dialog/templdlg.hrc
+++ b/main/sfx2/source/dialog/templdlg.hrc
@@ -44,8 +44,3 @@
 #define BT_FLIST 8
 #define BT_VLIST 9
 #define BT_TOOL 10
-
-//IAccessibility2 Implementation 2009-----
-#define STR_STYLE_ELEMTLIST	18
-//-----IAccessibility2 Implementation 2009
-
diff --git a/main/sfx2/source/menu/mnuitem.cxx b/main/sfx2/source/menu/mnuitem.cxx
index e31c319..551c84c 100644
--- a/main/sfx2/source/menu/mnuitem.cxx
+++ b/main/sfx2/source/menu/mnuitem.cxx
@@ -291,10 +291,8 @@
 		DBG_ASSERT( GetId() < SID_OBJECTMENU0 || GetId() > SID_OBJECTMENU_LAST,
 					"SfxBoolItem not allowed for SID_OBJECTMENUx" );
 		bCheck = ((const SfxBoolItem*)pState)->GetValue();
-		// IAccessibility2 implementation 2009. ------
 		Menu* pMenu = pOwnMenu->GetSVMenu();
 		pMenu->SetItemBits( GetId() , pMenu->GetItemBits( GetId() ) | MIB_CHECKABLE);
-		// ------ IAccessibility2 implementation 2009.
 	}
 	else if ( pState->ISA(SfxEnumItemInterface) &&
 			  ((SfxEnumItemInterface *)pState)->HasBoolValue() )
@@ -303,10 +301,8 @@
 		DBG_ASSERT( GetId() < SID_OBJECTMENU0 || GetId() > SID_OBJECTMENU_LAST,
 					"SfxEnumItem not allowed for SID_OBJECTMENUx" );
 		bCheck = ((SfxEnumItemInterface *)pState)->GetBoolValue();
-		// IAccessibility2 implementation 2009. ------
 		Menu* pMenu = pOwnMenu->GetSVMenu();
 		pMenu->SetItemBits( GetId() , pMenu->GetItemBits( GetId() ) | MIB_CHECKABLE);
-		// ------ IAccessibility2 implementation 2009.
 	}
 	else if ( ( b_ShowStrings || bIsObjMenu ) && pState->ISA(SfxStringItem) )
 	{
diff --git a/main/sfx2/source/view/viewfrm.cxx b/main/sfx2/source/view/viewfrm.cxx
index da579e6..547b759 100644
--- a/main/sfx2/source/view/viewfrm.cxx
+++ b/main/sfx2/source/view/viewfrm.cxx
@@ -683,13 +683,11 @@
 				if( pSalvageItem )
 				{
 					aURL = pSalvageItem->GetValue();
-					// IAccessibility2 implementation 2009. ------
                     if (pNewSet)
                     {
                         pNewSet->ClearItem( SID_ORIGURL );
 					    pNewSet->ClearItem( SID_DOC_SALVAGE );
                     }
-					// ------ IAccessibility2 implementation 2009.
 				}
 
                 // TODO/LATER: Temporary solution, the SfxMedium must know the original URL as aLogicName
@@ -3385,7 +3383,6 @@
 	sal_Bool bShow = sal_False;
 	sal_Bool bHasChild = HasChildWindow(nSID);
 	bShow = pShowItem ? pShowItem->GetValue() : !bHasChild;
-	// IAccessibility2 implementation 2009. ------
     GetDispatcher()->Update_Impl( sal_True );
 
 	// ausf"uhren
@@ -3393,9 +3390,6 @@
 		ToggleChildWindow( nSID );
 
 	GetBindings().Invalidate( nSID );
-	// Move to the before show()
-    //GetDispatcher()->Update_Impl( sal_True );
-	// ------ IAccessibility2 implementation 2009.
 
 	// ggf. recorden
     if ( nSID == SID_HYPERLINK_DIALOG || nSID == SID_SEARCH_DLG )
diff --git a/main/solenv/bin/make_installer.pl b/main/solenv/bin/make_installer.pl
index c82577f..546a43f 100644
--- a/main/solenv/bin/make_installer.pl
+++ b/main/solenv/bin/make_installer.pl
@@ -87,6 +87,1107 @@
 use installer::xpdinstaller;
 use installer::ziplist;
 
+use strict;
+
+sub GetSetupScriptLines ($$$)
+{
+    my ($allsettingsarrayref, $allvariableshashref, $includepatharrayref) = @_;
+    
+    if ($installer::globals::setupscript_defined_in_productlist)
+    {
+        installer::setupscript::set_setupscript_name($allsettingsarrayref, $includepatharrayref);
+    }
+
+    $installer::logger::Info->print( "... analyzing script: $installer::globals::setupscriptname ... \n" );
+    installer::logger::globallog("setup script file: $installer::globals::setupscriptname");
+    $installer::logger::Info->print( "... analyzing script: $installer::globals::setupscriptname ... \n" );
+
+    # Reading the setup script file
+    my $setupscriptref = installer::files::read_file($installer::globals::setupscriptname);
+
+    # Resolving variables defined in the zip list file into setup
+    # script.  All the variables are defined in $allvariablesarrayref
+    installer::scpzipfiles::replace_all_ziplistvariables_in_file($setupscriptref, $allvariableshashref);
+
+    # Resolving %variables defined in the installation object
+    my $allscriptvariablesref = installer::setupscript::get_all_scriptvariables_from_installation_object(
+        $setupscriptref,
+        $installer::globals::setupscriptname);
+    installer::setupscript::add_lowercase_productname_setupscriptvariable($allscriptvariablesref);
+    installer::setupscript::resolve_lowercase_productname_setupscriptvariable($allscriptvariablesref);
+
+    $setupscriptref = installer::setupscript::replace_all_setupscriptvariables_in_script(
+        $setupscriptref,
+        $allscriptvariablesref);
+
+    # Adding all variables defined in the installation object into the
+    # hash of all variables.  This is needed if variables are defined
+    # in the installation object, but not in the zip list file.  If
+    # there is a definition in the zip list file and in the
+    # installation object, the installation object is more important
+    installer::setupscript::add_installationobject_to_variables($allvariableshashref, $allscriptvariablesref);
+
+    # Adding also all variables, that must be included into the $allvariableshashref.
+    installer::setupscript::add_forced_properties($allvariableshashref);
+
+    # Replacing preset properties, not using the default mechanisms (for example for UNIXPRODUCTNAME)
+    installer::setupscript::replace_preset_properties($allvariableshashref);
+
+    # We did this already.  Can this or the other one be removed.
+    installer::scpzipfiles::replace_all_ziplistvariables_in_file($setupscriptref, $allvariableshashref);
+
+    return $setupscriptref;
+}
+
+
+
+=head2 MakeWindowsBuild (...)
+
+	Create an MSI installation set for Windows that is based on IDT tables.
+
+=cut
+sub MakeWindowsBuild ($$$$$$$$$$$$$$$$$$$$)
+{
+    my (
+        $allvariableshashref,
+        $allsettingsarrayref,
+        $current_install_number,
+        $directoriesforepmarrayref,
+        $filesinproductlanguageresolvedarrayref,
+        $folderitemsinproductlanguageresolvedarrayref,
+        $includepatharrayref,
+        $includepatharrayref_lang,
+        $installdir,
+        $languagesarrayref,
+        $languagestringref,
+        $linksinproductlanguageresolvedarrayref,
+        $loggingdir,
+        $modulesinproductlanguageresolvedarrayref,
+        $packages,
+        $profileitemsinproductlanguageresolvedarrayref,
+        $registryitemsinproductlanguageresolvedarrayref,
+        $shipinstalldir,
+        $windowscustomactionsarrayref,
+        $folderinproductlanguageresolvedarrayref) = @_;
+
+    ###########################################
+    # Stripping libraries
+    ###########################################
+
+    # Building for gcc build in cws requires, that all files are stripped before packaging:
+    # 1. copy all files that need to be stripped locally 
+    # 2. strip all these files
+
+    if ( $installer::globals::compiler =~ /wntgcci/ )
+    {
+        installer::windows::strip::strip_binaries($filesinproductlanguageresolvedarrayref, $languagestringref);
+    }
+
+    $installdir = installer::worker::create_installation_directory($shipinstalldir, $languagestringref, \$current_install_number);
+
+    my $idtdirbase = installer::systemactions::create_directories("idt_files", $languagestringref);
+    $installer::globals::infodirectory = installer::systemactions::create_directories("info_files", $languagestringref);
+    my $installlogdir = installer::systemactions::create_directory_next_to_directory($installdir, "log");
+    # my $installchecksumdir = installer::systemactions::create_directory_next_to_directory($installdir, "checksum");
+
+    #################################################################################
+    # Preparing cabinet files from package definitions
+    #################################################################################
+
+    # installer::packagelist::prepare_cabinet_files($packages, $allvariableshashref, $$languagestringref);
+    installer::packagelist::prepare_cabinet_files($packages, $allvariableshashref);
+    # printing packages content:
+    installer::packagelist::log_cabinet_assignments();
+
+    #################################################################################
+    # Begin of functions that are used for the creation of idt files (Windows only)
+    #################################################################################
+    
+    $installer::logger::Info->print( "... creating idt files ...\n" );
+
+    installer::logger::include_header_into_logfile("Creating idt files:");
+
+    my $newidtdir = $idtdirbase . $installer::globals::separator . "00";	# new files into language independent directory "00"
+    installer::systemactions::create_directory($newidtdir);
+
+    my @allfilecomponents = ();
+    my @allregistrycomponents = ();
+
+    # Collecting all files with flag "BINARYTABLE"
+    my $binarytablefiles = installer::worker::collect_all_items_with_special_flag($filesinproductlanguageresolvedarrayref ,"BINARYTABLE");
+	
+    # Removing all files with flag "BINARYTABLE_ONLY"
+    @installer::globals::binarytableonlyfiles = ();
+    $filesinproductlanguageresolvedarrayref = installer::worker::remove_all_items_with_special_flag($filesinproductlanguageresolvedarrayref ,"BINARYTABLE_ONLY");
+
+    # Collecting all profileitems with flag "INIFILETABLE" for table "IniFile"
+    my $inifiletableentries = installer::worker::collect_all_items_with_special_flag($profileitemsinproductlanguageresolvedarrayref ,"INIFILETABLE");
+
+    # Creating the important dynamic idt files
+    installer::windows::msiglobal::set_msiproductversion($allvariableshashref);
+    installer::windows::msiglobal::put_msiproductversion_into_bootstrapfile($filesinproductlanguageresolvedarrayref);
+
+    # Add cabinet assignments to files
+    installer::windows::file::assign_cab_to_files($filesinproductlanguageresolvedarrayref);
+    installer::windows::file::assign_sequencenumbers_to_files($filesinproductlanguageresolvedarrayref);
+
+    # Collection all available directory trees
+    installer::windows::directory::collectdirectorytrees($directoriesforepmarrayref);
+
+    $filesinproductlanguageresolvedarrayref = installer::windows::file::create_files_table(
+        $filesinproductlanguageresolvedarrayref,
+        \@allfilecomponents,
+        $newidtdir,
+        $allvariableshashref);
+
+    installer::windows::directory::create_directory_table(
+        $directoriesforepmarrayref,
+        $newidtdir,
+        $allvariableshashref,
+        $loggingdir);
+
+    # Attention: The table "Registry.idt" contains language specific strings -> parameter: $languagesarrayref !
+    installer::windows::registry::create_registry_table($registryitemsinproductlanguageresolvedarrayref, \@allregistrycomponents, $newidtdir, $languagesarrayref, $allvariableshashref);
+	
+    installer::windows::component::create_component_table($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $directoriesforepmarrayref, \@allfilecomponents, \@allregistrycomponents, $newidtdir, $allvariableshashref);
+
+    # Attention: The table "Feature.idt" contains language specific strings -> parameter: $languagesarrayref !
+    installer::windows::feature::add_uniquekey($modulesinproductlanguageresolvedarrayref);
+    $modulesinproductlanguageresolvedarrayref = installer::windows::feature::sort_feature($modulesinproductlanguageresolvedarrayref);
+    installer::windows::feature::create_feature_table($modulesinproductlanguageresolvedarrayref, $newidtdir, $languagesarrayref, $allvariableshashref);
+
+    installer::windows::featurecomponent::create_featurecomponent_table($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $newidtdir);
+
+    installer::windows::media::create_media_table($filesinproductlanguageresolvedarrayref, $newidtdir, $allvariableshashref);
+
+    installer::windows::font::create_font_table($filesinproductlanguageresolvedarrayref, $newidtdir);
+
+    # Attention: The table "Shortcut.idt" contains language specific strings -> parameter: $languagesarrayref !
+    # Attention: Shortcuts (Folderitems) have icon files, that have to be copied into the Icon directory (last parameter)
+    my @iconfilecollector = ();
+
+    installer::windows::shortcut::create_shortcut_table($filesinproductlanguageresolvedarrayref, $linksinproductlanguageresolvedarrayref, $folderinproductlanguageresolvedarrayref, $folderitemsinproductlanguageresolvedarrayref, $directoriesforepmarrayref, $newidtdir, $languagesarrayref, $includepatharrayref, \@iconfilecollector);
+
+    installer::windows::inifile::create_inifile_table($inifiletableentries, $filesinproductlanguageresolvedarrayref, $newidtdir);
+
+    installer::windows::icon::create_icon_table(\@iconfilecollector, $newidtdir);	 # creating the icon table with all iconfiles used as shortcuts (FolderItems)
+
+    installer::windows::createfolder::create_createfolder_table($directoriesforepmarrayref, $filesinproductlanguageresolvedarrayref, $newidtdir, $allvariableshashref);
+
+    installer::windows::upgrade::create_upgrade_table($newidtdir, $allvariableshashref);
+
+    if ( ! $installer::globals::languagepack )	 # the following tables not for language packs
+    {
+        installer::windows::removefile::create_removefile_table($folderitemsinproductlanguageresolvedarrayref, $newidtdir);
+
+        installer::windows::selfreg::create_selfreg_table($filesinproductlanguageresolvedarrayref, $newidtdir);
+
+        # Adding Assemblies into the tables MsiAssembly and MsiAssemblyName dynamically
+        installer::windows::assembly::create_msiassembly_table($filesinproductlanguageresolvedarrayref, $newidtdir);
+        installer::windows::assembly::create_msiassemblyname_table($filesinproductlanguageresolvedarrayref, $newidtdir);
+        installer::windows::assembly::add_assembly_condition_into_component_table($filesinproductlanguageresolvedarrayref, $newidtdir);
+    }
+
+    $installer::logger::Lang->print("\n");
+
+    # Localizing the language dependent idt files
+    # For every language there will be a localized msi database
+    # For multilingual installation sets, the differences of this
+    # databases have to be stored in transforms.
+    
+    for ( my $m = 0; $m <= $#{$languagesarrayref}; $m++ )
+    {
+        my $onelanguage = ${$languagesarrayref}[$m];
+
+        my $is_bidi = 0;
+        if ( installer::existence::exists_in_array($onelanguage, \@installer::globals::bidilanguages) ) { $is_bidi = 1; }
+
+        my $languageidtdir = $idtdirbase . $installer::globals::separator . $onelanguage;
+        if ( -d $languageidtdir ) { installer::systemactions::remove_complete_directory($languageidtdir, 1); }
+        installer::systemactions::create_directory($languageidtdir);
+
+        # Copy the template idt files and the new created idt files into this language directory
+
+        $installer::logger::Info->print( "... copying idt files ...\n" );
+
+        installer::logger::include_header_into_logfile("Copying idt files to $languageidtdir:");
+        
+        installer::windows::idtglobal::prepare_language_idt_directory($languageidtdir, $newidtdir, $onelanguage, $filesinproductlanguageresolvedarrayref, \@iconfilecollector, $binarytablefiles, $allvariableshashref);
+
+        if (( ! $installer::globals::languagepack ) && ( ! $allvariableshashref->{'NOLANGUAGESELECTIONPRODUCT'} ))
+        {
+            # For multilingual installation sets, the dialog for the language selection can now be prepared, with 
+            # a checkbox for each available language. This has to happen before the following translation.
+            # The new controls have to be added into the Control.idt
+
+            my $controlidttablename = $languageidtdir . $installer::globals::separator . "Control.idt";
+            my $controlidttable = installer::files::read_file($controlidttablename);
+            installer::windows::idtglobal::add_language_checkboxes_to_database($controlidttable, $languagesarrayref);
+            installer::files::save_file($controlidttablename, $controlidttable);
+            $installer::logger::Lang->printf("Added checkboxes for language selection dialog into table %s\n",
+                $controlidttablename); 
+        }
+
+        # Now all files are copied into a language specific directory
+        # The template idt files can be translated
+
+        $installer::logger::Info->print( "... localizing idt files (language: $onelanguage) ...\n" );
+
+        installer::logger::include_header_into_logfile("Localizing idt files (Language: $onelanguage):");
+
+        my @translationfiles = ();			# all idt files, that need a translation
+        push(@translationfiles, "ActionTe.idt");			
+        push(@translationfiles, "Control.idt");			
+        push(@translationfiles, "CustomAc.idt");			
+        push(@translationfiles, "Error.idt");			
+        push(@translationfiles, "LaunchCo.idt");			
+        push(@translationfiles, "RadioBut.idt");			
+        push(@translationfiles, "Property.idt");			
+        push(@translationfiles, "UIText.idt");			
+		
+        my $oneidtfilename;
+        my $oneidtfile;
+		
+        foreach $oneidtfilename (@translationfiles)
+        {	
+            my $languagefilename = installer::windows::idtglobal::get_languagefilename($oneidtfilename, $installer::globals::idtlanguagepath);
+            my $languagefile = installer::files::read_file($languagefilename);
+
+            $oneidtfilename = $languageidtdir . $installer::globals::separator . $oneidtfilename;
+            $oneidtfile = installer::files::read_file($oneidtfilename);
+
+            # Now the substitution can start
+            installer::windows::idtglobal::translate_idtfile($oneidtfile, $languagefile, $onelanguage);
+            
+            installer::files::save_file($oneidtfilename, $oneidtfile);
+
+            $installer::logger::Lang->printf("Translated idt file: %s into language %s\n",
+                $oneidtfilename,
+                $onelanguage); 
+            $installer::logger::Lang->printf("Used languagefile: %s\n", $languagefilename);
+        }	
+        
+        # setting the encoding in every table (replacing WINDOWSENCODINGTEMPLATE)
+        
+        installer::windows::idtglobal::setencoding($languageidtdir, $onelanguage);
+
+        # setting bidi attributes, if required
+
+        if ( $is_bidi ) { installer::windows::idtglobal::setbidiattributes($languageidtdir, $onelanguage); }
+
+        # setting the encoding in every table (replacing WINDOWSENCODINGTEMPLATE)
+        installer::windows::idtglobal::set_multilanguageonly_condition($languageidtdir);
+        
+        # include the license text into the table Control.idt
+        
+        if ( ! $allvariableshashref->{'HIDELICENSEDIALOG'} )
+        {
+            my $licensefilesource = installer::windows::idtglobal::get_rtflicensefilesource($onelanguage, $includepatharrayref_lang);
+            my $licensefile = installer::files::read_file($licensefilesource);
+            installer::scpzipfiles::replace_all_ziplistvariables_in_rtffile($licensefile, $allvariableshashref);
+            my $controltablename = $languageidtdir . $installer::globals::separator . "Control.idt";
+            my $controltable = installer::files::read_file($controltablename);
+            installer::windows::idtglobal::add_licensefile_to_database($licensefile, $controltable);
+            installer::files::save_file($controltablename, $controltable);
+
+            $installer::logger::Lang->printf("Added licensefile %s into database %s\n",
+                $licensefilesource,
+                $controltablename); 
+        }
+
+        # include a component into environment table if required
+        
+        installer::windows::component::set_component_in_environment_table($languageidtdir, $filesinproductlanguageresolvedarrayref);
+
+        # include the ProductCode and the UpgradeCode from codes-file into the Property.idt
+        
+        installer::windows::property::set_codes_in_property_table($languageidtdir);
+        
+        # the language specific properties can now be set in the Property.idt
+        
+        installer::windows::property::update_property_table($languageidtdir, $onelanguage, $allvariableshashref, $languagestringref);
+
+        # replacing variables in RegLocat.idt
+        
+        installer::windows::msiglobal::update_reglocat_table($languageidtdir, $allvariableshashref);
+
+        # replacing variables in RemoveRe.idt (RemoveRegistry.idt)
+        
+        installer::windows::msiglobal::update_removere_table($languageidtdir);
+        
+        # adding language specific properties for multilingual installation sets
+        
+        installer::windows::property::set_languages_in_property_table($languageidtdir, $languagesarrayref);
+        
+        # adding settings into CheckBox.idt
+        installer::windows::property::update_checkbox_table($languageidtdir, $allvariableshashref);
+
+        # adding the files from the binary directory into the binary table
+        installer::windows::binary::update_binary_table($languageidtdir, $filesinproductlanguageresolvedarrayref, $binarytablefiles);
+
+        # setting patch codes to detect installed products
+
+        if (( $installer::globals::patch ) || ( $installer::globals::languagepack ) || ( $allvariableshashref->{'PDFCONVERTER'} )) { installer::windows::patch::update_patch_tables($languageidtdir, $allvariableshashref); }
+
+        # Adding Windows Installer CustomActions
+
+        installer::windows::idtglobal::addcustomactions($languageidtdir, $windowscustomactionsarrayref, $filesinproductlanguageresolvedarrayref);
+
+        # Adding child projects if specified
+
+        if ($installer::globals::addchildprojects)
+        {
+            # Adding child projects to installation dynamically (also in feature table)
+            installer::windows::idtglobal::add_childprojects($languageidtdir, $filesinproductlanguageresolvedarrayref, $allvariableshashref);
+            # setting Java variables for Java products
+            if ( $allvariableshashref->{'JAVAPRODUCT'} ) { installer::windows::java::update_java_tables($languageidtdir, $allvariableshashref); }
+        }
+
+        # Then the language specific msi database can be created
+        
+        if ( $installer::globals::iswin )	# only possible on a Windows platform
+        {
+            my $msidatabasename = installer::windows::msiglobal::get_msidatabasename($allvariableshashref, $onelanguage);
+            my $msifilename = $languageidtdir . $installer::globals::separator . $msidatabasename;
+
+            $installer::logger::Info->print( "... creating msi database (language $onelanguage) ... \n" );
+
+            installer::windows::msiglobal::set_uuid_into_component_table($languageidtdir, $allvariableshashref);	# setting new GUID for the components using the tool uuidgen.exe
+            installer::windows::msiglobal::prepare_64bit_database($languageidtdir, $allvariableshashref);	# making last 64 bit changes
+            installer::windows::msiglobal::create_msi_database($languageidtdir ,$msifilename);		
+
+            # validating the database 	# ToDo	
+
+            my $languagefile = installer::files::read_file($installer::globals::idtlanguagepath . $installer::globals::separator . "SIS.mlf");
+            # my $languagefile = installer::files::read_file($installer::globals::idtlanguagepath . $installer::globals::separator . "SIS.ulf");
+
+            installer::windows::msiglobal::write_summary_into_msi_database($msifilename, $onelanguage, $languagefile, $allvariableshashref);
+            
+            # copy msi database into installation directory
+
+            my $msidestfilename = $installdir . $installer::globals::separator . $msidatabasename;
+            installer::systemactions::copy_one_file($msifilename, $msidestfilename);				 
+        }
+    }
+
+    # Creating transforms, if the installation set has more than one language
+    # renaming the msi database and generating the setup.ini file
+
+    my $defaultlanguage = installer::languages::get_default_language($languagesarrayref);
+
+    if ( $installer::globals::iswin )	# only possible on a Windows platform
+    {					
+        if  ( $#{$languagesarrayref} > 0 )
+        {
+            installer::windows::msiglobal::create_transforms($languagesarrayref, $defaultlanguage, $installdir, $allvariableshashref);
+        }
+
+        installer::windows::msiglobal::rename_msi_database_in_installset($defaultlanguage, $installdir, $allvariableshashref);
+
+        if ( $allvariableshashref->{'ADDLANGUAGEINDATABASENAME'} ) { installer::windows::msiglobal::add_language_to_msi_database($defaultlanguage, $installdir, $allvariableshashref); }
+
+        $installer::logger::Info->print( "... generating setup.ini ...\n" );
+        
+        if ( ! $allvariableshashref->{'NOLOADERREQUIRED'} ) { installer::windows::msiglobal::create_setup_ini($languagesarrayref, $defaultlanguage, $installdir, $allvariableshashref); }
+    }
+
+    # Analyzing the ScpActions and copying the files into the installation set
+    # At least the loader.exe
+
+    $installer::logger::Info->print( "... copying files into installation set ...\n" );
+
+    # installer::windows::msiglobal::copy_scpactions_into_installset($defaultlanguage, $installdir, $scpactionsinproductlanguageresolvedarrayref);
+    installer::worker::put_scpactions_into_installset($installdir);
+
+    # ... copying the setup.exe
+
+    installer::windows::msiglobal::copy_windows_installer_files_into_installset($installdir, $includepatharrayref, $allvariableshashref);
+
+    # ... copying the child projects
+
+    if ($installer::globals::addchildprojects)
+    {
+        installer::windows::msiglobal::copy_child_projects_into_installset($installdir, $allvariableshashref);
+    }
+
+    $installer::logger::Info->print( "... creating ddf files ...\n" );
+
+    # Creating all needed ddf files and generating a list
+    # for the package process containing all system calls
+
+    my $ddfdir = installer::systemactions::create_directories("ddf", $languagestringref);
+
+    $installer::globals::packjobref = installer::windows::msiglobal::generate_cab_file_list($filesinproductlanguageresolvedarrayref, $installdir, $ddfdir, $allvariableshashref);
+
+    # Update and patch reasons the pack order needs to be saved
+    installer::windows::msiglobal::save_packorder();
+
+    $installer::logger::Info->print("\n"); 
+
+    #######################################################
+    # Finally really create the installation packages,
+    # Only for Windows and only on a windows platform.
+    #######################################################
+
+    if ( $installer::globals::iswin )	# only possible on a Windows platform
+    {
+        $installer::logger::Info->print( "... packaging installation set ... \n" );
+        installer::windows::msiglobal::execute_packaging($installer::globals::packjobref, $loggingdir, $allvariableshashref);
+        if ( $installer::globals::include_cab_in_msi ) { installer::windows::msiglobal::include_cabs_into_msi($installdir); }
+    }
+
+    #######################################################
+    # Analyzing the log file
+    #######################################################
+
+    my $is_success = 0;
+    my $finalinstalldir = "";
+    installer::worker::clean_output_tree();	# removing directories created in the output tree
+    ($is_success, $finalinstalldir) = installer::worker::analyze_and_save_logfile($loggingdir, $installdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
+
+    
+    #######################################################
+    # Creating download installation set
+    #######################################################
+
+    my $create_download = 0;
+    my $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "downloadname");
+    if ( $installer::globals::languagepack ) { $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "langpackdownloadname"); }
+    if ( $installer::globals::patch ) { $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "patchdownloadname"); }
+
+    if ( $is_success ) { installer::followme::save_followme_info($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref, $current_install_number, $loggingdir, $installlogdir); }
+
+    if ( $$downloadname ne "" ) { $create_download = 1; }
+    if (( $is_success ) && ( $create_download ) && ( $ENV{'ENABLE_DOWNLOADSETS'} ))
+    {
+        my $downloaddir = installer::download::create_download_sets($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref);
+        installer::worker::analyze_and_save_logfile($loggingdir, $downloaddir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
+    }
+}
+
+
+
+
+=head2 MakeNonWindowsBuild (...)
+
+	Create an installation set for non-windows platforms based on EPM files.
+
+=cut
+sub MakeNonWindowsBuild ($$$$$$$$$$$$$$$)
+{
+    my (
+        $allvariableshashref,
+        $allsettingsarrayref,
+        $current_install_number,
+        $directoriesforepmarrayref,
+        $filesinproductlanguageresolvedarrayref,
+        $includepatharrayref,
+        $languagesarrayref,
+        $languagestringref,
+        $linksinproductlanguageresolvedarrayref,
+        $unixlinksinproductlanguageresolvedarrayref,
+        $loggingdir,
+        $modulesinproductarrayref,
+        $packages,
+        $shipinstalldir,
+        $currentdir
+        ) = @_;
+
+    ####################################################
+    # Creating directories
+    ####################################################
+
+    my $installdir = installer::worker::create_installation_directory($shipinstalldir, $languagestringref, \$current_install_number);
+
+    my $listfiledir = installer::systemactions::create_directories("listfile", $languagestringref);
+    my $installlogdir = installer::systemactions::create_directory_next_to_directory($installdir, "log");
+
+    ####################################################
+    # Reading for Solaris all package descriptions
+    # from file defined in property PACKAGEMAP
+    ####################################################
+
+    if (  $installer::globals::issolarisbuild ) { installer::epmfile::read_packagemap($allvariableshashref, $includepatharrayref, $languagesarrayref); }
+
+    my $epmexecutable = "";
+    my $found_epm = 0;
+
+    # shuffle array to reduce parallel packaging process in pool
+    installer::worker::shuffle_array($packages);
+
+    # iterating over all packages
+    for ( my $k = 0; $k <= $#{$packages}; $k++ )
+    {
+        my $onepackage = ${$packages}[$k];
+        
+        # checking, if this is a language pack or a project pack.
+        # Creating language packs only, if $installer::globals::languagepack is set. Parameter: -languagepack
+        
+        if ( $installer::globals::languagepack ) { installer::languagepack::replace_languagestring_variable($onepackage, $languagestringref); }
+        
+        my $onepackagename = $onepackage->{'module'};			# name of the top module (required)
+
+        my $shellscriptsfilename = "";
+        if ( $onepackage->{'script'} ) { $shellscriptsfilename = $onepackage->{'script'}; }
+        # no scripts for Solaris patches!
+        if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild )) { $shellscriptsfilename = ""; }
+
+        ###########################
+        # package name
+        ###########################
+
+        my $packagename = "";
+
+        if ( $installer::globals::issolarisbuild )	 # only for Solaris
+        {
+            if ( $onepackage->{'solarispackagename'} ) { $packagename = $onepackage->{'solarispackagename'}; }	
+        }
+        else # not Solaris
+        {
+            if ( $onepackage->{'packagename'} ) { $packagename = $onepackage->{'packagename'}; }
+        }
+        
+        if (!($packagename eq ""))
+        { 
+            installer::packagelist::resolve_packagevariables(\$packagename, $allvariableshashref, 0);
+        }
+
+        # Debian allows no underline in package name
+        if ( $installer::globals::debian ) { $packagename =~ s/_/-/g; } 
+
+        # Debian allows no underline in package name
+        if ( $installer::globals::debian ) { $packagename =~ s/_/-/g; } 
+
+        my $linkaddon = "";
+        my $linkpackage = 0;
+        $installer::globals::add_required_package = "";
+        $installer::globals::linuxlinkrpmprocess = 0;
+        
+        if ( $installer::globals::makelinuxlinkrpm )
+        {
+            my $oldpackagename = $packagename;
+            $installer::globals::add_required_package = $oldpackagename;	# the link rpm requires the non-linked version
+            if ( $installer::globals::languagepack ) { $packagename = $packagename . "_u"; }
+            else { $packagename = $packagename . "u"; }
+            my $savestring = $oldpackagename . "\t" . $packagename;
+            push(@installer::globals::linkrpms, $savestring);
+            $linkaddon = "_links";
+            $installer::globals::linuxlinkrpmprocess = 1;
+            $linkpackage = 1;
+        }
+
+        ####################################################
+        # Header for this package into log file
+        ####################################################
+
+        installer::logger::include_header_into_logfile("Creating package: $packagename ($k)");
+
+        ####################################################
+        # Pool check: If package is created at the moment
+        # try it again later.
+        ####################################################
+
+        if (( $installer::globals::patch ) || 
+            ( $installer::globals::languagepack ) ||
+            ( $installer::globals::packageformat eq "native" ) ||
+            ( $installer::globals::packageformat eq "portable" ) || 
+            ( $installer::globals::packageformat eq "osx" )) { $allvariableshashref->{'POOLPRODUCT'} = 0; }
+
+        if ( $allvariableshashref->{'POOLPRODUCT'} )
+        {
+            if ( ! $installer::globals::sessionidset ) { installer::packagepool::set_sessionid(); }
+            if ( ! $installer::globals::poolpathset ) { installer::packagepool::set_pool_path(); }
+            if (( ! $installer::globals::getuidpathset ) && ( $installer::globals::issolarisbuild )) { installer::worker::set_getuid_path($includepatharrayref); }
+
+            my $package_is_creatable = installer::packagepool::check_package_availability($packagename);
+
+            if (( ! $package_is_creatable ) && ( ! exists($installer::globals::poolshiftedpackages{$packagename}) ))
+            {
+                splice(@{$packages}, $k, 1);	# removing package ...
+                push(@{$packages}, $onepackage);  # ... and adding it to the end
+                $installer::globals::poolshiftedpackages{$packagename} = 1;	# only shifting each package once
+                $k--;														# decreasing the counter
+                $installer::logger::Info->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
+                $installer::logger::Lang->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
+                next;														# repeating this iteration with new package
+            }
+        }
+
+        ###########################################
+        # Root path, can be defined as parameter
+        ###########################################
+
+        my $packagerootpath = "";
+
+        if ($installer::globals::rootpath eq "")
+        {
+            $packagerootpath = $onepackage->{'destpath'};
+            installer::packagelist::resolve_packagevariables(\$packagerootpath, $allvariableshashref, 1);
+            if ( $^O =~ /darwin/i ) { $packagerootpath =~ s/\/opt\//\/Applications\//; }
+        }
+        else
+        {
+            $packagerootpath = $installer::globals::rootpath;
+        }
+
+        #############################################
+        # copying the collectors for each package
+        #############################################
+
+        my $filesinpackage = installer::converter::copy_collector($filesinproductlanguageresolvedarrayref);
+        my $linksinpackage = installer::converter::copy_collector($linksinproductlanguageresolvedarrayref);
+        my $unixlinksinpackage = installer::converter::copy_collector($unixlinksinproductlanguageresolvedarrayref);
+        my $dirsinpackage = installer::converter::copy_collector($directoriesforepmarrayref);
+
+        ###########################################
+        # setting the root path for the packages
+        ###########################################
+        
+        installer::scriptitems::add_rootpath_to_directories($dirsinpackage, $packagerootpath);
+        installer::scriptitems::add_rootpath_to_files($filesinpackage, $packagerootpath);
+        installer::scriptitems::add_rootpath_to_links($linksinpackage, $packagerootpath);
+        installer::scriptitems::add_rootpath_to_files($unixlinksinpackage, $packagerootpath);
+
+        #################################
+        # collecting items for package
+        #################################
+
+        $filesinpackage = installer::packagelist::find_files_for_package($filesinpackage, $onepackage);
+        $unixlinksinpackage = installer::packagelist::find_files_for_package($unixlinksinpackage, $onepackage);
+        $linksinpackage = installer::packagelist::find_links_for_package($linksinpackage, $filesinpackage);
+        $dirsinpackage = installer::packagelist::find_dirs_for_package($dirsinpackage, $onepackage);
+
+        ###############################################
+        # nothing to do, if $filesinpackage is empty
+        ###############################################
+
+        if ( ! ( $#{$filesinpackage} > -1 ))
+        {
+            push(@installer::globals::emptypackages, $packagename);
+            $installer::logger::Lang->print("\n");
+            $installer::logger::Lang->print("\n");
+            $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n\n", $packagename);
+            next;	# next package, end of loop !
+        }
+
+        #################################################################
+        # nothing to do for Linux patches, if no file has flag PATCH
+        #################################################################
+
+        # Linux Patch: The complete RPM has to be built, if one file in the RPM has the flag PATCH (also for DEBs)
+        if (( $installer::globals::patch ) && (( $installer::globals::islinuxrpmbuild ) || ( $installer::globals::islinuxdebbuild )))
+        {
+            my $patchfiles = installer::worker::collect_all_items_with_special_flag($filesinpackage ,"PATCH");
+            if ( ! ( $#{$patchfiles} > -1 ))
+            {
+                $installer::logger::Lang->print("\n");
+                $installer::logger::Lang->print("\n");
+                $installer::logger::Lang->print("Linux Patch: No patch file in package: %s \-\> Skipping\n\n",
+                    $packagename); 
+                next;
+            }
+        }
+
+        ###########################################
+        # Stripping libraries
+        ###########################################
+
+        # Building for non Windows platforms in cws requires, that all files are stripped before packaging:
+        # 1. copy all files that need to be stripped locally 
+        # 2. strip all these files
+
+        if ( $installer::globals::strip )
+        {
+            installer::strip::strip_libraries($filesinpackage, $languagestringref);
+        }
+        
+        ###############################################################
+        # Searching for files in $filesinpackage with flag LINUXLINK
+        ###############################################################
+
+        if (( $installer::globals::islinuxbuild ) && ( ! $installer::globals::simple ))	# for rpms and debian packages
+        {
+            # special handling for all RPMs in $installer::globals::linuxlinkrpms
+
+            # if (( $installer::globals::linuxlinkrpms =~ /\b$onepackagename\b/ ) || ( $installer::globals::languagepack ))
+            if ( $installer::globals::linuxlinkrpms =~ /\b$onepackagename\b/ )
+            {
+                my $run = 0;
+
+                if (( $installer::globals::makelinuxlinkrpm ) && ( ! $run ))
+                {
+                    $filesinpackage = \@installer::globals::linuxpatchfiles;
+                    $linksinpackage = \@installer::globals::linuxlinks;
+                    $installer::globals::makelinuxlinkrpm = 0;
+                    if ( $installer::globals::patch ) { $installer::globals::call_epm = 1; }	 # enabling packing again
+                    $run = 1;
+
+                }
+
+                if (( ! $installer::globals::makelinuxlinkrpm ) && ( ! $run ))
+                {
+                    $filesinpackage = installer::worker::prepare_linuxlinkfiles($filesinpackage);
+                    $linksinpackage = installer::worker::prepare_forced_linuxlinkfiles($linksinpackage);
+                    $installer::globals::makelinuxlinkrpm = 1;
+                    if ( $allvariableshashref->{'OPENSOURCE'} ) { $installer::globals::add_required_package = $packagename . "u"; }
+                    if ( $installer::globals::patch ) { $installer::globals::call_epm = 0; }	 # no packing of core module in patch
+                    $shellscriptsfilename = "";	# shell scripts only need to be included into the link rpm
+                    $run = 1;
+
+                }					
+            }							
+        }
+
+        ###########################################
+        # Simple installation mechanism
+        ###########################################
+
+        if ( $installer::globals::simple ) { installer::worker::install_simple($onepackagename, $$languagestringref, $dirsinpackage, $filesinpackage, $linksinpackage, $unixlinksinpackage); }
+
+        ###########################################
+        # Checking epm state
+        ###########################################
+
+        if (( $installer::globals::call_epm ) && ( ! $found_epm ))
+        {
+            $epmexecutable = installer::epmfile::find_epm_on_system($includepatharrayref);
+            installer::epmfile::set_patch_state($epmexecutable);	# setting $installer::globals::is_special_epm
+            $found_epm = 1;	# searching only once
+        }
+
+        ###########################################
+        # Creating epm list file
+        ###########################################
+        
+        if ( ! $installer::globals::simple )
+        {			
+            # epm list file format:
+            # type mode owner group destination source options
+            # Example for a file: f 755 root sys /usr/bin/foo foo
+            # Example for a directory: d 755 root sys /var/spool/foo - 
+            # Example for a link: l 000 root sys /usr/bin/linkname filename
+            # The source field specifies the file to link to
+
+            my $epmfilename = "epm_" . $onepackagename . $linkaddon . ".lst";
+
+            $installer::logger::Info->print( "... creating epm list file $epmfilename ... \n" );
+
+            my $completeepmfilename = $listfiledir . $installer::globals::separator . $epmfilename;
+
+            my @epmfile = ();
+
+            my $epmheaderref = installer::epmfile::create_epm_header($allvariableshashref, $filesinproductlanguageresolvedarrayref, $languagesarrayref, $onepackage);
+            installer::epmfile::adding_header_to_epm_file(\@epmfile, $epmheaderref);
+
+            if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild ))
+            {
+                $filesinpackage = installer::worker::analyze_patch_files($filesinpackage);
+
+                if ( ! ( $#{$filesinpackage} > -1 ))
+                {
+                    push(@installer::globals::emptypackages, $packagename);
+                    $installer::logger::Lang->print("\n");
+                    $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n", $packagename); 
+                    next;	# next package, end of loop !
+                }
+            }
+
+            # adding directories, files and links into epm file
+			
+            installer::epmfile::put_directories_into_epmfile($dirsinpackage, \@epmfile, $allvariableshashref, $packagerootpath);
+            installer::epmfile::put_files_into_epmfile($filesinpackage, \@epmfile );
+            installer::epmfile::put_links_into_epmfile($linksinpackage, \@epmfile );
+            installer::epmfile::put_unixlinks_into_epmfile($unixlinksinpackage, \@epmfile );
+
+            if ((!( $shellscriptsfilename eq "" )) && (!($installer::globals::iswindowsbuild))) { installer::epmfile::adding_shellscripts_to_epm_file(\@epmfile, $shellscriptsfilename, $packagerootpath, $allvariableshashref, $filesinpackage); }
+
+            installer::files::save_file($completeepmfilename ,\@epmfile);
+
+            # ... splitting the rootpath into a relocatable part and a static part, if possible
+
+            my $staticpath = "";
+            my $relocatablepath = "";
+            # relocatable path can be defined in package list
+            if ( $onepackage->{'relocatablepath'} ) { $relocatablepath = $onepackage->{'relocatablepath'}; }
+            # setting fix part and variable part of destination path
+            installer::epmfile::analyze_rootpath($packagerootpath, \$staticpath, \$relocatablepath, $allvariableshashref);
+            
+            # ... replacing the variable PRODUCTDIRECTORYNAME in the shellscriptfile by $staticpath
+
+            installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "PRODUCTDIRECTORYNAME", $staticpath);
+            installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "SOLSUREPACKAGEPREFIX", $allvariableshashref->{'SOLSUREPACKAGEPREFIX'});
+            installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "UREPACKAGEPREFIX", $allvariableshashref->{'UREPACKAGEPREFIX'});
+            # installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "BASISDIRECTORYVERSION", $allvariableshashref->{'OOOBASEVERSION'});
+            installer::files::save_file($completeepmfilename ,\@epmfile);
+
+            #######################################################
+            # Now the complete content of the package is known,
+            # including variables and shell scripts.
+            # Create the package or using the package pool?
+            #######################################################
+
+            my $use_package_from_pool = 0;
+            if ( $allvariableshashref->{'POOLPRODUCT'} ) { $use_package_from_pool = installer::packagepool::package_is_up_to_date($allvariableshashref, $onepackage, $packagename, \@epmfile, $filesinpackage, $installdir, $installer::globals::epmoutpath, $languagestringref); }
+
+            if ( $use_package_from_pool == 3 ) # repeat this package later
+            {	
+                my $package_is_creatable = installer::packagepool::check_package_availability($packagename);
+
+                if (( ! $package_is_creatable ) && ( ! exists($installer::globals::poolshiftedpackages{$packagename}) ))
+                {
+                    splice(@{$packages}, $k, 1);	# removing package ...
+                    push(@{$packages}, $onepackage);  # ... and adding it to the end
+                    $installer::globals::poolshiftedpackages{$packagename} = 1;	# only shifting each package once
+                    $k--;														# decreasing the counter
+                    $installer::logger::Info->print("\n");
+                    $installer::logger::Info->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
+                    $installer::logger::Lang->print("\n");
+                    $installer::logger::Lang->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
+                    next;														# repeating this iteration with new package
+                }
+            }
+
+            if ( $use_package_from_pool == 4 ) # There was a problem with pooling. Repeat this package immediately.
+            {
+                $k--;														# decreasing the counter
+                $installer::logger::Info->print("\n");
+                $installer::logger::Info->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
+                $installer::logger::Lang->print("\n");
+                $installer::logger::Lang->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
+                next;														# repeating this iteration
+            }
+
+            if ( $use_package_from_pool == 0 )
+            {	
+                # changing into the "install" directory to create installation sets
+                
+                $currentdir = cwd();	# $currentdir is global in this file
+
+                chdir($installdir);		# changing into install directory ($installdir is global in this file)
+
+                ###########################################
+                # Starting epm
+                ###########################################
+
+                # With a patched epm, it is now possible to set the relocatable directory, change 
+                # the directory in which the packages are created, setting "requires" and "provides"
+                # (Linux) or creating the "depend" file (Solaris) and finally to begin
+                # the packaging process with standard tooling and standard parameter
+                # Linux: Adding into the spec file: Prefix: /opt
+                # Solaris: Adding into the pkginfo file: BASEDIR=/opt
+                # Attention: Changing of the path can influence the shell scripts
+				
+                if (( $installer::globals::is_special_epm ) && ( ($installer::globals::islinuxrpmbuild) || ($installer::globals::issolarispkgbuild) ))	# special handling only for Linux RPMs and Solaris Packages
+                {
+                    if ( $installer::globals::call_epm )	# only do something, if epm is really executed
+                    {
+                        # ... now epm can be started, to create the installation sets
+
+                        $installer::logger::Info->print( "... starting patched epm ... \n" );
+
+                        installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref);
+
+                        my $newepmdir = installer::epmfile::prepare_packages($loggingdir, $packagename, $staticpath, $relocatablepath, $onepackage, $allvariableshashref, $filesinpackage, $languagestringref);	# adding the line for Prefix / Basedir, include rpmdir
+
+                        installer::epmfile::create_packages_without_epm($newepmdir, $packagename, $includepatharrayref, $allvariableshashref, $languagestringref);	# start to package
+
+                        # finally removing all temporary files
+
+                        installer::epmfile::remove_temporary_epm_files($newepmdir, $loggingdir, $packagename);
+
+                        # Installation:
+                        # Install: pkgadd -a myAdminfile -d ./SUNWso8m34.pkg
+                        # Install: rpm -i --prefix=/opt/special --nodeps so8m35.rpm
+
+                        installer::epmfile::create_new_directory_structure($newepmdir);
+                        $installer::globals::postprocess_specialepm = 1;
+
+                        # solaris patch not needed anymore						
+                        # if (( $installer::globals::patch ) && ( $installer::globals::issolarisx86build )) { installer::worker::fix2_solaris_x86_patch($packagename, $installer::globals::epmoutpath); }
+                    }		
+                }
+                else	# this is the standard epm (not relocatable) or ( nonlinux and nonsolaris )
+                {			
+                    installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "\$\$PRODUCTINSTALLLOCATION", $relocatablepath);
+                    installer::files::save_file($completeepmfilename ,\@epmfile);	# Warning for pool, content of epm file is changed.
+
+                    if ( $installer::globals::call_epm )
+                    {
+                        # ... now epm can be started, to create the installation sets
+
+                        $installer::logger::Info->print( "... starting unpatched epm ... \n" );
+                        
+                        if ( $installer::globals::call_epm ) { installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref); }
+
+                        if (($installer::globals::islinuxrpmbuild) || ($installer::globals::issolarispkgbuild) || ($installer::globals::debian))
+                        {
+                            $installer::globals::postprocess_standardepm = 1;
+                        }
+                    }
+                }
+
+                if ( $allvariableshashref->{'POOLPRODUCT'} ) { installer::packagepool::put_content_into_pool($packagename, $installdir, $installer::globals::epmoutpath, $filesinpackage, \@epmfile); }
+
+                chdir($currentdir);	# changing back into start directory
+
+            } # end of "if ( ! $use_package_from_pool ) 
+
+        } # end of "if ( ! $installer::globals::simple ) 
+
+        ###########################################
+        # xpd installation mechanism
+        ###########################################
+
+        # Creating the xpd file for the package. This has to happen always, not determined by $use_package_from_pool
+
+        if ( $installer::globals::isxpdplatform )
+        {
+            if (( ! $installer::globals::languagepack ) && ( ! $installer::globals::patch ))
+            {
+                if (( $allvariableshashref->{'XPDINSTALLER'} ) && ( $installer::globals::call_epm != 0 ))
+                {
+                    installer::xpdinstaller::create_xpd_file($onepackage, $packages, $languagestringref, $allvariableshashref, $modulesinproductarrayref, $installdir, $installer::globals::epmoutpath, $linkpackage, \%installer::globals::xpdpackageinfo);
+                    $installer::globals::xpd_files_prepared = 1;
+                    %installer::globals::xpdpackageinfo = ();
+                }
+            }
+        }
+
+        if ( $installer::globals::makelinuxlinkrpm ) { $k--; }	# decreasing the counter to create the link rpm!
+
+    }	# end of "for ( my $k = 0; $k <= $#{$packages}; $k++ )"
+
+    installer::packagepool::log_pool_statistics();
+
+    ##############################################################
+    # Post epm functionality, after the last package is packed
+    ##############################################################
+
+    if ( $installer::globals::postprocess_specialepm )
+    {
+        installer::logger::include_header_into_logfile("Post EPM processes (Patched EPM):");
+
+        chdir($installdir);
+
+        # Copying the cde, kde and gnome packages into the installation set
+        if ( $installer::globals::addsystemintegration ) { installer::epmfile::put_systemintegration_into_installset($installer::globals::epmoutpath, $includepatharrayref, $allvariableshashref, $modulesinproductarrayref); }
+
+        # Adding license and readme into installation set
+        # if ($installer::globals::addlicensefile) { installer::epmfile::put_installsetfiles_into_installset($installer::globals::epmoutpath); }
+        if ($installer::globals::addlicensefile) { installer::worker::put_scpactions_into_installset("."); }
+
+        # Adding child projects to installation dynamically
+        if ($installer::globals::addchildprojects) { installer::epmfile::put_childprojects_into_installset($installer::globals::epmoutpath, $allvariableshashref, $modulesinproductarrayref, $includepatharrayref); }
+
+        # Adding license file into setup
+        if ( $allvariableshashref->{'PUT_LICENSE_INTO_SETUP'} ) { installer::worker::put_license_into_setup(".", $includepatharrayref); }
+
+        # Creating installation set for Unix language packs, that are not part of multi lingual installation sets
+        if ( ( $installer::globals::languagepack ) && ( ! $installer::globals::debian ) && ( ! $installer::globals::makedownload ) ) { installer::languagepack::build_installer_for_languagepack($installer::globals::epmoutpath, $allvariableshashref, $includepatharrayref, $languagesarrayref, $languagestringref); }
+
+        # Finalizing patch installation sets
+        if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild )) { installer::epmfile::finalize_patch($installer::globals::epmoutpath, $allvariableshashref); }
+        if (( $installer::globals::patch ) && ( $installer::globals::islinuxrpmbuild )) { installer::epmfile::finalize_linux_patch($installer::globals::epmoutpath, $allvariableshashref, $includepatharrayref); }
+
+        # Copying the xpd installer into the installation set
+        if (( $allvariableshashref->{'XPDINSTALLER'} ) && ( $installer::globals::isxpdplatform ) && ( $installer::globals::xpd_files_prepared ))
+        {
+            installer::xpdinstaller::create_xpd_installer($installdir, $allvariableshashref, $languagestringref);
+            $installer::globals::addjavainstaller = 0;	# only one java installer possible
+        }
+
+        # Copying the java installer into the installation set
+        chdir($currentdir);	# changing back into start directory
+        if ( $installer::globals::addjavainstaller ) { installer::javainstaller::create_java_installer($installdir, $installer::globals::epmoutpath, $languagestringref, $languagesarrayref, $allvariableshashref, $includepatharrayref, $modulesinproductarrayref); }
+    }
+
+    if ( $installer::globals::postprocess_standardepm )
+    {
+        installer::logger::include_header_into_logfile("Post EPM processes (Standard EPM):");
+
+        chdir($installdir);
+        
+        # determine the destination directory
+        my $newepmdir = installer::epmfile::determine_installdir_ooo();
+
+        # Copying the cde, kde and gnome packages into the installation set
+        if ( $installer::globals::addsystemintegration ) { installer::epmfile::put_systemintegration_into_installset($newepmdir, $includepatharrayref, $allvariableshashref, $modulesinproductarrayref); }
+
+        # Adding license and readme into installation set
+        # if ($installer::globals::addlicensefile) { installer::epmfile::put_installsetfiles_into_installset($newepmdir); }
+        if ($installer::globals::addlicensefile) { installer::worker::put_scpactions_into_installset("."); }
+
+        # Adding license file into setup
+        if ( $allvariableshashref->{'PUT_LICENSE_INTO_SETUP'} ) { installer::worker::put_license_into_setup(".", $includepatharrayref); }
+
+        # Creating installation set for Unix language packs, that are not part of multi lingual installation sets
+        if ( ( $installer::globals::languagepack ) && ( ! $installer::globals::debian ) && ( ! $installer::globals::makedownload ) ) { installer::languagepack::build_installer_for_languagepack($newepmdir, $allvariableshashref, $includepatharrayref, $languagesarrayref, $languagestringref); }
+
+        chdir($currentdir);	# changing back into start directory
+    }
+
+    if (( $installer::globals::issolarispkgbuild ) && ( $allvariableshashref->{'COLLECT_PKGMAP'} )) { installer::worker::collectpackagemaps($installdir, $languagestringref, $allvariableshashref); }
+    
+    #######################################################
+    # Analyzing the log file
+    #######################################################
+
+    my $is_success = 0;
+    my $finalinstalldir = "";
+
+    installer::worker::clean_output_tree();	# removing directories created in the output tree
+    ($is_success, $finalinstalldir) = installer::worker::analyze_and_save_logfile($loggingdir, $installdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
+    my $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "downloadname");
+    if ( $is_success ) { installer::followme::save_followme_info($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref, $current_install_number, $loggingdir, $installlogdir); }
+
+    #######################################################
+    # Creating download installation set
+    #######################################################
+
+    if ( $installer::globals::makedownload )
+    {
+        my $create_download = 0;
+        if ( $$downloadname ne "" ) { $create_download = 1; }
+        if (( $is_success ) && ( $create_download ) && ( $ENV{'ENABLE_DOWNLOADSETS'} ))
+        {
+            my $downloaddir = installer::download::create_download_sets($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref);
+            installer::worker::analyze_and_save_logfile($loggingdir, $downloaddir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
+        }
+    }
+
+    #######################################################
+    # Creating jds installation set
+    #######################################################
+
+    if ( $installer::globals::makejds )
+    {
+        my $create_jds = 0;
+
+        if ( $allvariableshashref->{'JDSBUILD'} ) { $create_jds = 1; }
+        if (! $installer::globals::issolarispkgbuild ) { $create_jds = 0; }
+
+        if (( $is_success ) && ( $create_jds ))
+        {
+            if ( ! $installer::globals::jds_language_controlled )
+            {
+                my $correct_language = installer::worker::check_jds_language($allvariableshashref, $languagestringref);
+                $installer::globals::correct_jds_language = $correct_language;
+                $installer::globals::jds_language_controlled = 1;
+            }
+
+            if ( $installer::globals::correct_jds_language )
+            {
+                my $jdsdir = installer::worker::create_jds_sets($finalinstalldir, $allvariableshashref, $languagestringref, $languagesarrayref, $includepatharrayref);
+                installer::worker::clean_jds_temp_dirs();
+                installer::worker::analyze_and_save_logfile($loggingdir, $jdsdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
+            }
+        }
+    }
+}
+
+
+
+
 #################################################
 # Main program
 #################################################
@@ -124,8 +1225,6 @@
 installer::parameter::getparameter();
 
 # debugging can start after function "getparameter"
-if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 1: The platform independent part\n"); }
-if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 1a: The language independent part\n"); }
 
 installer::parameter::control_fundamental_parameter();
 installer::parameter::setglobalvariables();
@@ -177,22 +1276,16 @@
 $installer::logger::Info->print( "... analyzing $installer::globals::ziplistname ... \n" );
 
 my ($productblockref, $parent) = installer::ziplist::getproductblock($ziplistref, $installer::globals::product, 1);		# product block from zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "productblock.log" ,$productblockref); }
 
 my ($settingsblockref, undef) = installer::ziplist::getproductblock($productblockref, "Settings", 0);		# settings block from zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "settingsblock1.log" ,$settingsblockref); }
 
 $settingsblockref = installer::ziplist::analyze_settings_block($settingsblockref);				# select data from settings block in zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "settingsblock2.log" ,$settingsblockref); }
 
 my $allsettingsarrayref = installer::ziplist::get_settings_from_ziplist($settingsblockref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allsettings1.log" ,$allsettingsarrayref); }
 
 my $allvariablesarrayref = installer::ziplist::get_variables_from_ziplist($settingsblockref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allvariables1.log" ,$allvariablesarrayref); }
 
 my ($globalproductblockref, undef) = installer::ziplist::getproductblock($ziplistref, $installer::globals::globalblock, 0);		# global product block from zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "globalproductblock.log" ,$globalproductblockref); }
 
 while (defined $parent)
 {
@@ -220,41 +1313,30 @@
 if ( $#{$globalproductblockref} > -1 )
 {
     my ($globalsettingsblockref, undef) = installer::ziplist::getproductblock($globalproductblockref, "Settings", 0);		# settings block from zip.lst
-    if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "globalsettingsblock1.log" ,$globalsettingsblockref); }
 
     $globalsettingsblockref = installer::ziplist::analyze_settings_block($globalsettingsblockref);				# select data from settings block in zip.lst
-    if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "globalsettingsblock2.log" ,$globalsettingsblockref); }
     
     my $allglobalsettingsarrayref = installer::ziplist::get_settings_from_ziplist($globalsettingsblockref);
-    if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allglobalsettings1.log" ,$allglobalsettingsarrayref); }
 
     my $allglobalvariablesarrayref = installer::ziplist::get_variables_from_ziplist($globalsettingsblockref);
-    if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allglobalvariables1.log" ,$allglobalvariablesarrayref); }
 
     if ( $#{$allglobalsettingsarrayref} > -1 ) { $allsettingsarrayref = installer::converter::combine_arrays_from_references_first_win($allsettingsarrayref, $allglobalsettingsarrayref); }
     if ( $#{$allglobalvariablesarrayref} > -1 ) { $allvariablesarrayref = installer::converter::combine_arrays_from_references_first_win($allvariablesarrayref, $allglobalvariablesarrayref); }
 }
 
 $allsettingsarrayref = installer::ziplist::remove_multiples_from_ziplist($allsettingsarrayref); # the settings from the zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allsettings2.log" ,$allsettingsarrayref); }
 
 $allvariablesarrayref = installer::ziplist::remove_multiples_from_ziplist($allvariablesarrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allvariables2.log" ,$allvariablesarrayref); }
 
 installer::ziplist::replace_variables_in_ziplist_variables($allvariablesarrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allvariables2a.log" ,$allvariablesarrayref); }
 
 my $allvariableshashref = installer::converter::convert_array_to_hash($allvariablesarrayref);	# the variables from the zip.lst
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables3.log", $allvariableshashref); }
 
 installer::ziplist::set_default_productversion_if_required($allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables3a.log", $allvariableshashref); }
 
 installer::ziplist::add_variables_to_allvariableshashref($allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables3b.log", $allvariableshashref); }
 
 installer::ziplist::overwrite_ooovendor( $allvariableshashref );
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables3c.log", $allvariableshashref); }
 
 ########################################################
 # Check if this is simple packaging mechanism
@@ -301,22 +1383,16 @@
 }
 
 my $includepatharrayref = installer::converter::convert_stringlist_into_array($includepathref, ",");
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray1.log" ,$includepatharrayref); }
 
 installer::ziplist::replace_all_variables_in_pathes($includepatharrayref, $pathvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray2.log" ,$includepatharrayref); }
 
 installer::ziplist::replace_minor_in_pathes($includepatharrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray3.log" ,$includepatharrayref); }
 
 installer::ziplist::replace_packagetype_in_pathes($includepatharrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray3a.log" ,$includepatharrayref); }
 
 installer::ziplist::resolve_relative_pathes($includepatharrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray3b.log" ,$includepatharrayref); }
 
 installer::ziplist::remove_ending_separator($includepatharrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray3c.log" ,$includepatharrayref); }
 
 ##############################################
 # Collecting all files from all include
@@ -359,52 +1435,7 @@
 # Analyzing the setup script
 #####################################
 
-if ($installer::globals::setupscript_defined_in_productlist) { installer::setupscript::set_setupscript_name($allsettingsarrayref, $includepatharrayref); }
-
-installer::logger::globallog("setup script file: $installer::globals::setupscriptname");
-
-$installer::logger::Info->print( "... analyzing script: $installer::globals::setupscriptname ... \n" );
-
-my $setupscriptref = installer::files::read_file($installer::globals::setupscriptname); # Reading the setup script file
-
-# Resolving variables defined in the zip list file into setup script
-# All the variables are defined in $allvariablesarrayref
-
-installer::scpzipfiles::replace_all_ziplistvariables_in_file($setupscriptref, $allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscript1.log" ,$setupscriptref); }
-
-# Resolving %variables defined in the installation object
-
-my $allscriptvariablesref = installer::setupscript::get_all_scriptvariables_from_installation_object($setupscriptref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscriptvariables1.log" ,$allscriptvariablesref); }
-
-installer::setupscript::add_lowercase_productname_setupscriptvariable($allscriptvariablesref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscriptvariables2.log" ,$allscriptvariablesref); }
-
-installer::setupscript::resolve_lowercase_productname_setupscriptvariable($allscriptvariablesref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscriptvariables3.log" ,$allscriptvariablesref); }
-
-$setupscriptref = installer::setupscript::replace_all_setupscriptvariables_in_script($setupscriptref, $allscriptvariablesref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscript2.log" ,$setupscriptref); }
-
-# Adding all variables defined in the installation object into the hash of all variables.
-# This is needed if variables are defined in the installation object, but not in the zip list file.
-# If there is a definition in the zip list file and in the installation object, the installation object is more important
-
-installer::setupscript::add_installationobject_to_variables($allvariableshashref, $allscriptvariablesref);
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables4.log", $allvariableshashref); }
-
-# Adding also all variables, that must be included into the $allvariableshashref.
-installer::setupscript::add_forced_properties($allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables5.log", $allvariableshashref); }
-
-# Replacing preset properties, not using the default mechanisms (for example for UNIXPRODUCTNAME)
-installer::setupscript::replace_preset_properties($allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_hash($loggingdir . "allvariables6.log", $allvariableshashref); }
-
-installer::scpzipfiles::replace_all_ziplistvariables_in_file($setupscriptref, $allvariableshashref);
-if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "setupscript3.log" ,$setupscriptref); }
-
+my $setupscriptref = GetSetupScriptLines($allsettingsarrayref, $allvariableshashref, $includepatharrayref);
 
 installer::logger::log_hashref($allvariableshashref);
 
@@ -413,28 +1444,21 @@
 # Collect all directories in the script to get the destination dirs
 
 my $dirsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Directory");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories1.log", $dirsinproductarrayref); }
 
 if ( $installer::globals::languagepack ) { installer::scriptitems::use_langpack_hostname($dirsinproductarrayref); }
 if ( $installer::globals::patch ) { installer::scriptitems::use_patch_hostname($dirsinproductarrayref); }
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories1a.log", $dirsinproductarrayref); }
 
 if ( $allvariableshashref->{'SHIFT_BASIS_INTO_BRAND_LAYER'} ) { $dirsinproductarrayref = installer::scriptitems::shift_basis_directory_parents($dirsinproductarrayref); }
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories1b.log", $dirsinproductarrayref); }
 if ( $allvariableshashref->{'OFFICEDIRECTORYNAME'} ) { installer::scriptitems::set_officedirectory_name($dirsinproductarrayref, $allvariableshashref->{'OFFICEDIRECTORYNAME'}); }
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories1b.log", $dirsinproductarrayref); }
 
 
 installer::scriptitems::resolve_all_directory_names($dirsinproductarrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories2.log", $dirsinproductarrayref); }
 
 $installer::logger::Info->print( "... analyzing files ... \n" );
 
 my $filesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "File");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles1.log", $filesinproductarrayref); }
 
 $filesinproductarrayref = installer::scriptitems::remove_delete_only_files_from_productlists($filesinproductarrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2.log", $filesinproductarrayref); }
 
 if (( ! $installer::globals::iswindowsbuild ) && 
 	( ! $installer::globals::islinuxrpmbuild ) && 
@@ -446,76 +1470,61 @@
 	{ installer::control::check_oxtfiles($filesinproductarrayref); }
 
 if ($installer::globals::product =~ /suite/i ) { $filesinproductarrayref = installer::scriptitems::remove_notinsuite_files_from_productlists($filesinproductarrayref); }
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2aa.log", $filesinproductarrayref); }
 
 if (! $installer::globals::languagepack)
 {
 	$filesinproductarrayref = installer::scriptitems::remove_Languagepacklibraries_from_Installset($filesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2b.log", $filesinproductarrayref); }
 }
 
 if (! $installer::globals::patch)
 {
 	$filesinproductarrayref = installer::scriptitems::remove_patchonlyfiles_from_Installset($filesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2c.log", $filesinproductarrayref); }
 }
 
 if (! $installer::globals::tab)
 {
 	$filesinproductarrayref = installer::scriptitems::remove_tabonlyfiles_from_Installset($filesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2c.log", $filesinproductarrayref); }
 }
 
 if (( $installer::globals::packageformat ne "installed" ) && ( $installer::globals::packageformat ne "archive" ))
 {
 	$filesinproductarrayref = installer::scriptitems::remove_installedproductonlyfiles_from_Installset($filesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2cc.log", $filesinproductarrayref); }
 }
 
 $installer::logger::Info->print( "... analyzing scpactions ... \n" );
 
 my $scpactionsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "ScpAction");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions1.log", $scpactionsinproductarrayref); }
 
 if (( ! $allvariableshashref->{'XPDINSTALLER'} ) || ( ! $installer::globals::isxpdplatform ))
 {
 	$scpactionsinproductarrayref = installer::scriptitems::remove_Xpdonly_Items($scpactionsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions1a.log", $scpactionsinproductarrayref); }
 }
 
 if ( $installer::globals::languagepack ) { installer::scriptitems::use_langpack_copy_scpaction($scpactionsinproductarrayref); }
 if ( $installer::globals::patch ) { installer::scriptitems::use_patch_copy_scpaction($scpactionsinproductarrayref); }
 if (($installer::globals::devsnapshotbuild)) { installer::scriptitems::use_dev_copy_scpaction($scpactionsinproductarrayref); }
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions1b.log", $scpactionsinproductarrayref); }
 
 # $scpactionsinproductarrayref = installer::scriptitems::remove_scpactions_without_name($scpactionsinproductarrayref);
-# if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions2.log", $scpactionsinproductarrayref); }
 
 installer::scriptitems::change_keys_of_scpactions($scpactionsinproductarrayref);
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions2.log", $scpactionsinproductarrayref); }
 
 $installer::logger::Info->print( "... analyzing shortcuts ... \n" );
 
 my $linksinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Shortcut");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks1.log", $linksinproductarrayref); }
 
 $installer::logger::Info->print( "... analyzing unix links ... \n" );
 
 my $unixlinksinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Unixlink");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks1.log", $unixlinksinproductarrayref); }
 
 # $unixlinksinproductarrayref = installer::scriptitems::filter_layerlinks_from_unixlinks($unixlinksinproductarrayref);
-# if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks1b.log", $unixlinksinproductarrayref); }
 
 $installer::logger::Info->print( "... analyzing profile ... \n" );
 
 my $profilesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Profile");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles1.log", $profilesinproductarrayref); }
 
 $installer::logger::Info->print( "... analyzing profileitems ... \n" );
 
 my $profileitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "ProfileItem");
-if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems1.log", $profileitemsinproductarrayref); }
 
 my $folderinproductarrayref;
 my $folderitemsinproductarrayref;
@@ -527,31 +1536,24 @@
 	$installer::logger::Info->print( "... analyzing folders ... \n" );
 
 	$folderinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Folder");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder1.log", $folderinproductarrayref); }
 
 	$installer::logger::Info->print( "... analyzing folderitems ... \n" );
 
 	$folderitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "FolderItem");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems1.log", $folderitemsinproductarrayref); }
 
 	installer::setupscript::add_predefined_folder($folderitemsinproductarrayref, $folderinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder1b.log", $folderinproductarrayref); }
 
 	installer::setupscript::prepare_non_advertised_files($folderitemsinproductarrayref, $filesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2d.log", $filesinproductarrayref); }
 
 	$installer::logger::Info->print( "... analyzing registryitems ... \n" );
 
 	$registryitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "RegistryItem");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems1.log", $registryitemsinproductarrayref); }
 
 	$registryitemsinproductarrayref = installer::scriptitems::remove_uninstall_regitems_from_script($registryitemsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems1b.log", $registryitemsinproductarrayref); }
 
 	$installer::logger::Info->print( "... analyzing Windows custom actions ... \n" );
 
 	$windowscustomactionsarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "WindowsCustomAction");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "windowscustomactions1.log", $windowscustomactionsarrayref); }
 }
 
 my $modulesinproductarrayref;
@@ -561,38 +1563,29 @@
 	$installer::logger::Info->print( "... analyzing modules ... \n" );
 
 	$modulesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Module");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1.log", $modulesinproductarrayref); }
 
 	if (( ! $allvariableshashref->{'XPDINSTALLER'} ) || ( ! $installer::globals::isxpdplatform ))
 	{
 		$modulesinproductarrayref = installer::scriptitems::remove_Xpdonly_Items($modulesinproductarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1a.log", $modulesinproductarrayref); }
 	}
 
 	installer::scriptitems::resolve_assigned_modules($modulesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1b.log", $modulesinproductarrayref); }
 
 	$modulesinproductarrayref = installer::scriptitems::remove_template_modules($modulesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1c.log", $modulesinproductarrayref); }
 
 	installer::scriptitems::set_children_flag($modulesinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1d.log", $modulesinproductarrayref); }
 
 	installer::scriptitems::collect_all_languagemodules($modulesinproductarrayref);
 
 	# Assigning the modules to the items
 
 	installer::scriptitems::assigning_modules_to_items($modulesinproductarrayref, $filesinproductarrayref, "Files");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles3.log", $filesinproductarrayref); }
 
 	installer::scriptitems::assigning_modules_to_items($modulesinproductarrayref, $unixlinksinproductarrayref, "Unixlinks");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks2.log", $unixlinksinproductarrayref); }
 
 	installer::scriptitems::assigning_modules_to_items($modulesinproductarrayref, $dirsinproductarrayref, "Dirs");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories2aa.log", $dirsinproductarrayref); }
 }
 
-if ( $installer::globals::debug ) { installer::logger::debuginfo("\nEnd of part 1a: The language independent part\n"); }
 
 # saving debug info, before staring part 1b
 if ( $installer::globals::debug ) { installer::logger::savedebug($installer::globals::exitlog); }
@@ -610,14 +1603,12 @@
 # The for iterates over all products, separated by an # in the language list
 ###############################################################################
 
-if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 1b: The language dependent part\n"); }
 
 # Run the following code block exactly once.
 # This strange version of a do{}while(false) loop exists only to allow (legacy) next statements.
 for (;1;last) 
 {
 	my $languagesarrayref = installer::languages::get_all_languages_for_one_product($installer::globals::languageproduct, $allvariableshashref);
-	if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "languages.log" ,$languagesarrayref); }
 
 	$installer::globals::alllanguagesinproductarrayref = $languagesarrayref;
 	my $languagestringref = installer::languages::get_language_string($languagesarrayref);
@@ -704,16 +1695,6 @@
 	# Reading an existing msi database, to prepare update and patch
 	###################################################################
 
-	my $refdatabase = "";
-	my $uniquefilename = "";
-	my $revuniquefilename = "";
-	my $revshortfilename = "";
-	my $allupdatecomponentorder = "";
-	my $shortdirname = "";
-	my $componentid = "";
-	my $componentidkeypath = "";
-	my $alloldproperties = "";
-
 	##############################################
 	# Setting global code variables for Windows
 	##############################################
@@ -722,7 +1703,7 @@
 	{
 		if (( $installer::globals::iswindowsbuild ) && ( $installer::globals::packageformat ne "archive" ) && ( $installer::globals::packageformat ne "installed" ))
 		{
-			installer::windows::msiglobal::set_global_code_variables($languagesarrayref, $languagestringref, $allvariableshashref, $alloldproperties);
+			installer::windows::msiglobal::set_global_code_variables($languagesarrayref, $allvariableshashref);
 		}
 	}
 		
@@ -730,8 +1711,7 @@
 	# Resolving include paths (language dependent)
 	################################################
 
-	$includepatharrayref_lang = installer::ziplist::replace_languages_in_pathes($includepatharrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "allpatharray4.log" ,$includepatharrayref_lang); }
+	my $includepatharrayref_lang = installer::ziplist::replace_languages_in_pathes($includepatharrayref, $languagesarrayref);
 
 	if ( $installer::globals::refresh_includepathes ) { installer::worker::collect_all_files_from_includepathes($includepatharrayref_lang); }
 
@@ -748,14 +1728,11 @@
 	#####################################
 
 	my $dirsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($dirsinproductarrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories3.log", $dirsinproductlanguageresolvedarrayref); }
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories2a.log", $dirsinproductarrayref); }
 
 	# A new directory array is needed ($dirsinproductlanguageresolvedarrayref instead of $dirsinproductarrayref)
 	# because $dirsinproductarrayref is needed in get_Destination_Directory_For_Item_From_Directorylist
 
 	installer::scriptitems::changing_name_of_language_dependent_keys($dirsinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories4.log", $dirsinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::checking_directories_with_corrupt_hostname($dirsinproductlanguageresolvedarrayref, $languagesarrayref);
 
@@ -768,59 +1745,44 @@
 	$installer::logger::Info->print( "... analyzing files ...\n" );
 
 	my $filesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($filesinproductarrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles4.log", $filesinproductlanguageresolvedarrayref); }
 
 	if ( ! $installer::globals::set_office_start_language )
 	{
 		$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_office_start_language_files($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles4b.log", $filesinproductlanguageresolvedarrayref); }
 	}
 	
 	installer::scriptitems::changing_name_of_language_dependent_keys($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles5.log", $filesinproductlanguageresolvedarrayref); }
 
 	if ( $installer::globals::iswin and $^O =~ /MSWin/i ) { installer::converter::convert_slash_to_backslash($filesinproductlanguageresolvedarrayref); }
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles6.log", $filesinproductlanguageresolvedarrayref); }
 
 	$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_non_existent_languages_in_productlists($filesinproductlanguageresolvedarrayref, $languagestringref, "Name", "file");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles7.log", $filesinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_Source_Directory_For_Files_From_Includepathlist($filesinproductlanguageresolvedarrayref, $includepatharrayref_lang, $dirsinproductlanguageresolvedarrayref, "Files");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles8a.log", $filesinproductlanguageresolvedarrayref); }
 
 	$filesinproductlanguageresolvedarrayref = installer::scriptitems::add_bundled_extension_blobs( $filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles8b.log", $filesinproductlanguageresolvedarrayref); }
     ($filesinproductlanguageresolvedarrayref,$dirsinproductarrayref) = installer::scriptitems::add_bundled_prereg_extensions(
         $filesinproductlanguageresolvedarrayref, $dirsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles8c.log", $filesinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist($filesinproductlanguageresolvedarrayref, $dirsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles9.log", $filesinproductlanguageresolvedarrayref); }
 
 	$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_Files_Without_Sourcedirectory($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10.log", $filesinproductlanguageresolvedarrayref); }
 
 	if ($installer::globals::languagepack)
 	{
 		$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_Files_For_Languagepacks($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10c.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 
 	if ( ! $allvariableshashref->{'NO_README_IN_ROOTDIR'} )
 	{
 		$filesinproductlanguageresolvedarrayref = installer::scriptitems::add_License_Files_into_Installdir($filesinproductlanguageresolvedarrayref, $dirsinproductlanguageresolvedarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10b.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 	$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_onlyasialanguage_files_from_productlists($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10d.log", $filesinproductlanguageresolvedarrayref); }
 
 	$filesinproductlanguageresolvedarrayref = installer::scriptitems::remove_onlywesternlanguage_files_from_productlists($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10e.log", $filesinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::make_filename_language_specific($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10f.log", $filesinproductlanguageresolvedarrayref); }
 	
 	######################################################################################
 	# Unzipping files with flag ARCHIVE and putting all included files into the file list
@@ -831,15 +1793,12 @@
 	my @additional_paths_from_zipfiles = ();
 
 	$filesinproductlanguageresolvedarrayref = installer::archivefiles::resolving_archive_flag($filesinproductlanguageresolvedarrayref, \@additional_paths_from_zipfiles, $languagestringref, $loggingdir);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles11.log", $filesinproductlanguageresolvedarrayref); }
-	if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "additional_paths.log" ,\@additional_paths_from_zipfiles); }
 
 	# packed files sometimes contain a "$" in their name: HighlightText$1.class. For epm the "$" has to be quoted by "$$" 
 
 	if (!( $installer::globals::iswindowsbuild || $installer::globals::simple ) )
 	{
 		installer::scriptitems::quoting_illegal_filenames($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles12.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 	#####################################
@@ -849,7 +1808,6 @@
 	$installer::logger::Info->print( "... analyzing files with flag SUBST_FILENAME ...\n" );
 
 	installer::substfilenamefiles::resolving_subst_filename_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles12d.log", $filesinproductlanguageresolvedarrayref); }
 
 	#####################################
 	# Files with flag SCPZIP_REPLACE
@@ -860,7 +1818,6 @@
 	# Editing files with flag SCPZIP_REPLACE.
 
 	installer::scpzipfiles::resolving_scpzip_replace_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, "File", $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles13.log", $filesinproductlanguageresolvedarrayref); }
 
 	#####################################
 	# Files with flag PATCH_SO_NAME
@@ -871,7 +1828,6 @@
 	# Editing files with flag PATCH_SO_NAME.
 
 	installer::scppatchsoname::resolving_patchsoname_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, "File", $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles13b.log", $filesinproductlanguageresolvedarrayref); }
 
 	#####################################
 	# Files with flag HIDDEN
@@ -880,7 +1836,6 @@
 	$installer::logger::Info->print( "... analyzing files with flag HIDDEN ...\n" );
 
 	installer::worker::resolving_hidden_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, "File", $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles13c.log", $filesinproductlanguageresolvedarrayref); }
 
 	############################################
 	# Collecting directories for epm list file
@@ -896,34 +1851,26 @@
 	# that have a CREATE flag. All other directories are created, if they contain at least one file.
 
 	my ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist1.log", $directoriesforepmarrayref); }
 	
 	($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist2.log", $directoriesforepmarrayref); }
 	
 	# installer::sorter::sorting_array_of_hashes($directoriesforepmarrayref, "HostName");
-	# if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist3.log", $directoriesforepmarrayref); }
 
 	#########################################################
 	# language dependent scpactions part
 	#########################################################
 
 	my $scpactionsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($scpactionsinproductarrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions3.log", $scpactionsinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::changing_name_of_language_dependent_keys($scpactionsinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions4.log", $scpactionsinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_Source_Directory_For_Files_From_Includepathlist($scpactionsinproductlanguageresolvedarrayref, $includepatharrayref_lang, $dirsinproductlanguageresolvedarrayref, "ScpActions");
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions5.log", $scpactionsinproductlanguageresolvedarrayref); }
 
 	# Editing scpactions with flag SCPZIP_REPLACE and PATCH_SO_NAME.
 
 	installer::scpzipfiles::resolving_scpzip_replace_flag($scpactionsinproductlanguageresolvedarrayref, $allvariableshashref, "ScpAction", $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions6.log", $scpactionsinproductlanguageresolvedarrayref); }
 
 	installer::scppatchsoname::resolving_patchsoname_flag($scpactionsinproductlanguageresolvedarrayref, $allvariableshashref, "ScpAction", $languagestringref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions6a.log", $scpactionsinproductlanguageresolvedarrayref); }
 
 	#########################################################
 	# language dependent links part
@@ -932,27 +1879,20 @@
 	$installer::logger::Info->print( "... analyzing links ...\n" );
 
 	my $linksinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($linksinproductarrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks2.log", $linksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::changing_name_of_language_dependent_keys($linksinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks3.log", $linksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_destination_file_path_for_links($linksinproductlanguageresolvedarrayref, $filesinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks4.log", $linksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist($linksinproductlanguageresolvedarrayref, $dirsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks5.log", $linksinproductlanguageresolvedarrayref); }
 
 	# Now taking all links that have no FileID but a ShortcutID, linking to another link
 
 	installer::scriptitems::get_destination_link_path_for_links($linksinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks6.log", $linksinproductlanguageresolvedarrayref); }
 
 	$linksinproductlanguageresolvedarrayref = installer::scriptitems::remove_workstation_only_items($linksinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks7.log", $linksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::resolve_links_with_flag_relative($linksinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks8.log", $linksinproductlanguageresolvedarrayref); }
 
 	#########################################################
 	# language dependent unix links part
@@ -961,13 +1901,10 @@
 	$installer::logger::Info->print( "... analyzing unix links ...\n" );
 
 	my $unixlinksinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($unixlinksinproductarrayref, $languagesarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks3.log", $unixlinksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::changing_name_of_language_dependent_keys($unixlinksinproductlanguageresolvedarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks4.log", $unixlinksinproductlanguageresolvedarrayref); }
 
 	installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist($unixlinksinproductlanguageresolvedarrayref, $dirsinproductarrayref);
-	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks5.log", $unixlinksinproductlanguageresolvedarrayref); }
 
 	#########################################################
 	# language dependent part for profiles and profileitems
@@ -981,33 +1918,27 @@
 		$installer::logger::Info->print( "... creating profiles ...\n" );
 
 		$profilesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($profilesinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles2.log", $profilesinproductlanguageresolvedarrayref); }
 
 		$profileitemsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($profileitemsinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems2.log", $profilesinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($profilesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles3.log", $profilesinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($profileitemsinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems3.log", $profileitemsinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::replace_setup_variables($profileitemsinproductlanguageresolvedarrayref, $languagestringref, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems4.log", $profileitemsinproductlanguageresolvedarrayref); }
 
 		if ( $installer::globals::patch_user_dir )
 		{
-			installer::scriptitems::replace_userdir_variable($profileitemsinproductlanguageresolvedarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems4a.log", $profileitemsinproductlanguageresolvedarrayref); }		
+			installer::scriptitems::replace_userdir_variable(
+                $profileitemsinproductlanguageresolvedarrayref,
+                $allvariableshashref);
 		}
 
 		installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist($profilesinproductlanguageresolvedarrayref, $dirsinproductarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles4.log", $profilesinproductlanguageresolvedarrayref); }
 
 		# Now the Profiles can be created
 
 		installer::profiles::create_profiles($profilesinproductlanguageresolvedarrayref, $profileitemsinproductlanguageresolvedarrayref, $filesinproductlanguageresolvedarrayref, $languagestringref, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles15.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 	my $registryitemsinproductlanguageresolvedarrayref; # cannot be defined in the following "if ( $installer::globals::iswindowsbuild )"
@@ -1023,10 +1954,8 @@
 		$installer::logger::Info->print( "... analyzing folder ...\n" );
 
 		$folderinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($folderinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder2.log", $folderinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($folderinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder3.log", $folderinproductlanguageresolvedarrayref); }
 
 		#########################################################
 		# language dependent part for folderitems
@@ -1035,10 +1964,8 @@
 		$installer::logger::Info->print( "... analyzing folderitems ...\n" );
 
 		$folderitemsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($folderitemsinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems2.log", $folderitemsinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($folderitemsinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems3.log", $folderitemsinproductlanguageresolvedarrayref); }
 
 		#########################################################
 		# language dependent part for registryitems
@@ -1047,10 +1974,8 @@
 		$installer::logger::Info->print( "... analyzing registryitems ...\n" );
 
 		$registryitemsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($registryitemsinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems2.log", $registryitemsinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($registryitemsinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems3.log", $registryitemsinproductlanguageresolvedarrayref); }	
 	}
 
 	#########################################################
@@ -1064,13 +1989,10 @@
 		$installer::logger::Info->print( "... analyzing modules ...\n" );
 
 		$modulesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($modulesinproductarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes_modules($loggingdir . "modules2.log", $modulesinproductlanguageresolvedarrayref); }
 
 		$modulesinproductlanguageresolvedarrayref = installer::scriptitems::remove_not_required_language_modules($modulesinproductlanguageresolvedarrayref, $languagesarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes_modules($loggingdir . "modules2a.log", $modulesinproductlanguageresolvedarrayref); }
 
 		installer::scriptitems::changing_name_of_language_dependent_keys($modulesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes_modules($loggingdir . "modules3a.log", $modulesinproductlanguageresolvedarrayref); }
 
 		# installer::scriptitems::collect_language_specific_names($modulesinproductlanguageresolvedarrayref);	
 		installer::scriptitems::select_required_language_strings($modulesinproductlanguageresolvedarrayref);	# using english strings
@@ -1083,27 +2005,19 @@
 	if ( $installer::globals::languagepack )
 	{
 		$filesinproductlanguageresolvedarrayref = installer::languagepack::select_language_items($filesinproductlanguageresolvedarrayref, $languagesarrayref, "File");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16b.log", $filesinproductlanguageresolvedarrayref); }
 		$scpactionsinproductlanguageresolvedarrayref = installer::languagepack::select_language_items($scpactionsinproductlanguageresolvedarrayref, $languagesarrayref, "ScpAction");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions6b.log", $scpactionsinproductlanguageresolvedarrayref); }
 		$linksinproductlanguageresolvedarrayref = installer::languagepack::select_language_items($linksinproductlanguageresolvedarrayref, $languagesarrayref, "Shortcut");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks8b.log", $linksinproductlanguageresolvedarrayref); }
 		$unixlinksinproductlanguageresolvedarrayref = installer::languagepack::select_language_items($unixlinksinproductlanguageresolvedarrayref, $languagesarrayref, "Unixlink");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks5.log", $unixlinksinproductlanguageresolvedarrayref); }
 		@{$folderitemsinproductlanguageresolvedarrayref} = (); # no folderitems in languagepacks
 
 		# Collecting the directories again, to include only the language specific directories
 		($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist3alangpack.log", $directoriesforepmarrayref); }
 		($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist3blangpack.log", $directoriesforepmarrayref); }
 		installer::sorter::sorting_array_of_hashes($directoriesforepmarrayref, "HostName");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist3clangpack.log", $directoriesforepmarrayref); }
 
 		if ( $installer::globals::iswindowsbuild )
 		{
 			$registryitemsinproductlanguageresolvedarrayref = installer::worker::select_langpack_items($registryitemsinproductlanguageresolvedarrayref, "RegistryItem");
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems3aa.log", $registryitemsinproductlanguageresolvedarrayref); }			
 		}
 
 	}
@@ -1115,31 +2029,22 @@
 	if (( $installer::globals::patch ) && (( $installer::globals::issolarispkgbuild ) || ( $installer::globals::iswindowsbuild )))
 	{
 		$filesinproductlanguageresolvedarrayref = installer::worker::select_patch_items($filesinproductlanguageresolvedarrayref, "File");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16patch.log", $filesinproductlanguageresolvedarrayref); }
 		$scpactionsinproductlanguageresolvedarrayref = installer::worker::select_patch_items($scpactionsinproductlanguageresolvedarrayref, "ScpAction");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions6patch.log", $scpactionsinproductlanguageresolvedarrayref); }
 		$linksinproductlanguageresolvedarrayref = installer::worker::select_patch_items($linksinproductlanguageresolvedarrayref, "Shortcut");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks8patch.log", $linksinproductlanguageresolvedarrayref); }
 		$unixlinksinproductlanguageresolvedarrayref = installer::worker::select_patch_items($unixlinksinproductlanguageresolvedarrayref, "Unixlink");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks6patch.log", $unixlinksinproductlanguageresolvedarrayref); }
 		$folderitemsinproductlanguageresolvedarrayref = installer::worker::select_patch_items($folderitemsinproductlanguageresolvedarrayref, "FolderItem");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfolderitems1patch.log", $folderitemsinproductlanguageresolvedarrayref); }
 		# @{$folderitemsinproductlanguageresolvedarrayref} = (); # no folderitems in languagepacks
 		
 		if ( $installer::globals::iswindowsbuild )
 		{
 			$registryitemsinproductlanguageresolvedarrayref = installer::worker::select_patch_items_without_name($registryitemsinproductlanguageresolvedarrayref, "RegistryItem");
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems3a.log", $registryitemsinproductlanguageresolvedarrayref); }			
 
 			installer::worker::prepare_windows_patchfiles($filesinproductlanguageresolvedarrayref, $languagestringref, $allvariableshashref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16bpatch.log", $filesinproductlanguageresolvedarrayref); }
 
 			# For Windows patches, the directories can now be collected again
 			($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist4_patch.log", $directoriesforepmarrayref); }
 		
 			installer::sorter::sorting_array_of_hashes($directoriesforepmarrayref, "HostName");
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforepmlist5_patch.log", $directoriesforepmarrayref); }
 		}
 	}
 
@@ -1157,7 +2062,6 @@
 	{
 		$installer::logger::Info->print( "... creating inf files ...\n" );
 		installer::worker::create_inf_file($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $folderinproductlanguageresolvedarrayref, $folderitemsinproductlanguageresolvedarrayref, $modulesinproductlanguageresolvedarrayref, $languagesarrayref, $languagestringref, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16c.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 	###########################################
@@ -1168,7 +2072,6 @@
 	if ( $allvariableshashref->{'UPXPRODUCT'} )
 	{
 		installer::upx::upx_on_libraries($filesinproductlanguageresolvedarrayref, $languagestringref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16d.log", $filesinproductlanguageresolvedarrayref); }
 	}
 
 	###########################################################
@@ -1200,7 +2103,6 @@
 	installer::packagelist::log_packages_content($packages);
 	installer::packagelist::create_module_destination_hash($packages, $allvariableshashref);
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nEnd of part 1b: The language dependent part\n"); }
 
 	# saving debug info, before starting part 2
 	if ( $installer::globals::debug ) { installer::logger::savedebug($installer::globals::exitlog); }
@@ -1209,1053 +2111,49 @@
 	# Part 2: The platform dependent part
 	#################################################
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 2: The platform dependent part\n"); }
-
-	#################################################
-	# Part 2a: All non-Windows platforms
-	#################################################
-
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 2a: All non-Windows platforms\n"); }
-
-	#########################################################
-	# ... creating epm list file ...
-	# Only for non-Windows platforms
-	#########################################################
-
-	if (!( $installer::globals::iswindowsbuild ))
-	{
-		####################################################
-		# Creating directories
-		####################################################
-
-		$installdir = installer::worker::create_installation_directory($shipinstalldir, $languagestringref, \$current_install_number);
-
-		my $listfiledir = installer::systemactions::create_directories("listfile", $languagestringref);
-		my $installlogdir = installer::systemactions::create_directory_next_to_directory($installdir, "log");
-
-		####################################################
-		# Reading for Solaris all package descriptions
-		# from file defined in property PACKAGEMAP
-		####################################################
-
-		if (  $installer::globals::issolarisbuild ) { installer::epmfile::read_packagemap($allvariableshashref, $includepatharrayref, $languagesarrayref); }
-
-		my $epmexecutable = "";
-		my $found_epm = 0;
-
-		# shuffle array to reduce parallel packaging process in pool
-		installer::worker::shuffle_array($packages);
-
-		# iterating over all packages
-		for ( my $k = 0; $k <= $#{$packages}; $k++ )
-		{
-			my $onepackage = ${$packages}[$k];
-			
-			# checking, if this is a language pack or a project pack.
-			# Creating language packs only, if $installer::globals::languagepack is set. Parameter: -languagepack
-			
-			if ( $installer::globals::languagepack ) { installer::languagepack::replace_languagestring_variable($onepackage, $languagestringref); }
-	
-			my $onepackagename = $onepackage->{'module'};			# name of the top module (required)
-
-			my $shellscriptsfilename = "";
-			if ( $onepackage->{'script'} ) { $shellscriptsfilename = $onepackage->{'script'}; }
-			# no scripts for Solaris patches!
-			if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild )) { $shellscriptsfilename = ""; }
-
-			###########################
-			# package name
-			###########################
-
-			my $packagename = "";
-
-			if ( $installer::globals::issolarisbuild )	 # only for Solaris
-			{
-				if ( $onepackage->{'solarispackagename'} ) { $packagename = $onepackage->{'solarispackagename'}; }	
-			}
-			else # not Solaris
-			{
-				if ( $onepackage->{'packagename'} ) { $packagename = $onepackage->{'packagename'}; }
-			}
-				
-			if (!($packagename eq ""))
-			{ 
-				installer::packagelist::resolve_packagevariables(\$packagename, $allvariableshashref, 0);
-			}
-
-			# Debian allows no underline in package name
-			if ( $installer::globals::debian ) { $packagename =~ s/_/-/g; } 
-
-			# Debian allows no underline in package name
-			if ( $installer::globals::debian ) { $packagename =~ s/_/-/g; } 
-
-			my $linkaddon = "";
-			my $linkpackage = 0;
-			$installer::globals::add_required_package = "";
-			$installer::globals::linuxlinkrpmprocess = 0;
-			
-			if ( $installer::globals::makelinuxlinkrpm )
-			{
-				my $oldpackagename = $packagename;
-				$installer::globals::add_required_package = $oldpackagename;	# the link rpm requires the non-linked version
-				if ( $installer::globals::languagepack ) { $packagename = $packagename . "_u"; }
-				else { $packagename = $packagename . "u"; }
-				my $savestring = $oldpackagename . "\t" . $packagename;
-				push(@installer::globals::linkrpms, $savestring);
-				$linkaddon = "_links";
-				$installer::globals::linuxlinkrpmprocess = 1;
-				$linkpackage = 1;
-			}
-
-			####################################################
-			# Header for this package into log file
-			####################################################
-
-			installer::logger::include_header_into_logfile("Creating package: $packagename ($k)");
-
-			####################################################
-			# Pool check: If package is created at the moment
-			# try it again later.
-			####################################################
-
-			if (( $installer::globals::patch ) || 
-				( $installer::globals::languagepack ) ||
-				( $installer::globals::packageformat eq "native" ) ||
-				( $installer::globals::packageformat eq "portable" ) || 
-				( $installer::globals::packageformat eq "osx" )) { $allvariableshashref->{'POOLPRODUCT'} = 0; }
-
-			if ( $allvariableshashref->{'POOLPRODUCT'} )
-			{
-				if ( ! $installer::globals::sessionidset ) { installer::packagepool::set_sessionid(); }
-				if ( ! $installer::globals::poolpathset ) { installer::packagepool::set_pool_path(); }
-				if (( ! $installer::globals::getuidpathset ) && ( $installer::globals::issolarisbuild )) { installer::worker::set_getuid_path($includepatharrayref); }
-
-				my $package_is_creatable = installer::packagepool::check_package_availability($packagename);
-
-				if (( ! $package_is_creatable ) && ( ! exists($installer::globals::poolshiftedpackages{$packagename}) ))
-				{
-					splice(@{$packages}, $k, 1);	# removing package ...
-					push(@{$packages}, $onepackage);  # ... and adding it to the end
-					$installer::globals::poolshiftedpackages{$packagename} = 1;	# only shifting each package once
-					$k--;														# decreasing the counter
-					$installer::logger::Info->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
-					$installer::logger::Lang->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
-					next;														# repeating this iteration with new package
-				}
-			}
-
-			###########################################
-			# Root path, can be defined as parameter
-			###########################################
-
-			my $packagerootpath = "";
-
-			if ($installer::globals::rootpath eq "")
-			{
-				$packagerootpath = $onepackage->{'destpath'};
-				installer::packagelist::resolve_packagevariables(\$packagerootpath, $allvariableshashref, 1);
-				if ( $^O =~ /darwin/i ) { $packagerootpath =~ s/\/opt\//\/Applications\//; }
-			}
-			else
-			{
-				$packagerootpath = $installer::globals::rootpath;
-			}
-
-			#############################################
-			# copying the collectors for each package
-			#############################################
-
-			my $filesinpackage = installer::converter::copy_collector($filesinproductlanguageresolvedarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files1_" . $packagename . ".log", $filesinpackage); }	
-			my $linksinpackage = installer::converter::copy_collector($linksinproductlanguageresolvedarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "links1_" . $packagename . ".log", $linksinpackage); }	
-			my $unixlinksinpackage = installer::converter::copy_collector($unixlinksinproductlanguageresolvedarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks1_" . $packagename . ".log", $unixlinksinpackage); }	
-			my $dirsinpackage = installer::converter::copy_collector($directoriesforepmarrayref);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "dirs1_" . $packagename . ".log", $dirsinpackage); }	
-
-			###########################################
-			# setting the root path for the packages
-			###########################################
-			
-			installer::scriptitems::add_rootpath_to_directories($dirsinpackage, $packagerootpath);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "dirs2_" . $packagename . ".log", $dirsinpackage); }	
-			installer::scriptitems::add_rootpath_to_files($filesinpackage, $packagerootpath);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files2_" . $packagename . ".log", $filesinpackage); }	
-			installer::scriptitems::add_rootpath_to_links($linksinpackage, $packagerootpath);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "links2_" . $packagename . ".log", $linksinpackage); }	
-			installer::scriptitems::add_rootpath_to_files($unixlinksinpackage, $packagerootpath);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks2_" . $packagename . ".log", $unixlinksinpackage); }	
-
-			#################################
-			# collecting items for package
-			#################################
-
-			$filesinpackage = installer::packagelist::find_files_for_package($filesinpackage, $onepackage);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files3_" . $packagename . ".log", $filesinpackage); }	
-			$unixlinksinpackage = installer::packagelist::find_files_for_package($unixlinksinpackage, $onepackage);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks3_" . $packagename . ".log", $unixlinksinpackage); }	
-			$linksinpackage = installer::packagelist::find_links_for_package($linksinpackage, $filesinpackage);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "links3_" . $packagename . ".log", $linksinpackage); }	
-			$dirsinpackage = installer::packagelist::find_dirs_for_package($dirsinpackage, $onepackage);
-			if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "dirs3_" . $packagename . ".log", $dirsinpackage); }	
-
-			###############################################
-			# nothing to do, if $filesinpackage is empty
-			###############################################
-
-			if ( ! ( $#{$filesinpackage} > -1 ))
-			{
-				push(@installer::globals::emptypackages, $packagename);
-                $installer::logger::Lang->print("\n");
-                $installer::logger::Lang->print("\n");
-                $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n\n", $packagename);
-				next;	# next package, end of loop !
-			}
-
-			#################################################################
-			# nothing to do for Linux patches, if no file has flag PATCH
-			#################################################################
-
-			# Linux Patch: The complete RPM has to be built, if one file in the RPM has the flag PATCH (also for DEBs)
-			if (( $installer::globals::patch ) && (( $installer::globals::islinuxrpmbuild ) || ( $installer::globals::islinuxdebbuild )))
-			{
-				my $patchfiles = installer::worker::collect_all_items_with_special_flag($filesinpackage ,"PATCH");
-				if ( ! ( $#{$patchfiles} > -1 ))
-				{
-                    $installer::logger::Lang->print("\n");
-                    $installer::logger::Lang->print("\n");
-                    $installer::logger::Lang->print("Linux Patch: No patch file in package: %s \-\> Skipping\n\n",
-                        $packagename); 
-					next;
-				}
-			}
-
-			###########################################
-			# Stripping libraries
-			###########################################
-
-			# Building for non Windows platforms in cws requires, that all files are stripped before packaging:
-			# 1. copy all files that need to be stripped locally 
-			# 2. strip all these files
-
-			if ( $installer::globals::strip )
-			{
-				installer::strip::strip_libraries($filesinpackage, $languagestringref);
-				if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . $packagename ."_files.log", $filesinpackage); }
-			}
-			
-			###############################################################
-			# Searching for files in $filesinpackage with flag LINUXLINK
-			###############################################################
-
-			if (( $installer::globals::islinuxbuild ) && ( ! $installer::globals::simple ))	# for rpms and debian packages
-			{
-				# special handling for all RPMs in $installer::globals::linuxlinkrpms
-
-				# if (( $installer::globals::linuxlinkrpms =~ /\b$onepackagename\b/ ) || ( $installer::globals::languagepack ))
-				if ( $installer::globals::linuxlinkrpms =~ /\b$onepackagename\b/ )
-				{
-					my $run = 0;
-
-					if (( $installer::globals::makelinuxlinkrpm ) && ( ! $run ))
-					{
-						$filesinpackage = \@installer::globals::linuxpatchfiles;
-						$linksinpackage = \@installer::globals::linuxlinks;
-						$installer::globals::makelinuxlinkrpm = 0;
-						if ( $installer::globals::patch ) { $installer::globals::call_epm = 1; }	 # enabling packing again
-						$run = 1;
-
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files3b_" . $packagename . ".log", $filesinpackage); }
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "links3b_" . $packagename . ".log", $linksinpackage); }
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "dirs3b_" . $packagename . ".log", $dirsinpackage); }
-					}
-
-					if (( ! $installer::globals::makelinuxlinkrpm ) && ( ! $run ))
-					{
-						$filesinpackage = installer::worker::prepare_linuxlinkfiles($filesinpackage);
-						$linksinpackage = installer::worker::prepare_forced_linuxlinkfiles($linksinpackage);
-						$installer::globals::makelinuxlinkrpm = 1;
-						if ( $allvariableshashref->{'OPENSOURCE'} ) { $installer::globals::add_required_package = $packagename . "u"; }
-						if ( $installer::globals::patch ) { $installer::globals::call_epm = 0; }	 # no packing of core module in patch
-						$shellscriptsfilename = "";	# shell scripts only need to be included into the link rpm
-						$run = 1;
-
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files3a_" . $packagename . ".log", $filesinpackage); }
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "links3a_" . $packagename . ".log", $linksinpackage); }
-						if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "dirs3a_" . $packagename . ".log", $dirsinpackage); }
-					}					
-				}							
-			}
-
-			###########################################
-			# Simple installation mechanism
-			###########################################
-
-			if ( $installer::globals::simple ) { installer::worker::install_simple($onepackagename, $$languagestringref, $dirsinpackage, $filesinpackage, $linksinpackage, $unixlinksinpackage); }
-
-			###########################################
-			# Checking epm state
-			###########################################
-
-			if (( $installer::globals::call_epm ) && ( ! $found_epm ))
-			{
-				$epmexecutable = installer::epmfile::find_epm_on_system($includepatharrayref);
-				installer::epmfile::set_patch_state($epmexecutable);	# setting $installer::globals::is_special_epm
-				$found_epm = 1;	# searching only once
-			}
-
-			###########################################
-			# Creating epm list file
-			###########################################
-			
-			if ( ! $installer::globals::simple )
-			{			
-				# epm list file format:
-				# type mode owner group destination source options
-				# Example for a file: f 755 root sys /usr/bin/foo foo
-				# Example for a directory: d 755 root sys /var/spool/foo - 
-				# Example for a link: l 000 root sys /usr/bin/linkname filename
-				# The source field specifies the file to link to
-
-				my $epmfilename = "epm_" . $onepackagename . $linkaddon . ".lst";
-
-				$installer::logger::Info->print( "... creating epm list file $epmfilename ... \n" );
-
-				my $completeepmfilename = $listfiledir . $installer::globals::separator . $epmfilename;
-
-				my @epmfile = ();
-
-				my $epmheaderref = installer::epmfile::create_epm_header($allvariableshashref, $filesinproductlanguageresolvedarrayref, $languagesarrayref, $onepackage);
-				installer::epmfile::adding_header_to_epm_file(\@epmfile, $epmheaderref);
-
-				if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild ))
-				{
-					$filesinpackage = installer::worker::analyze_patch_files($filesinpackage);
-					if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "files4_" . $packagename . ".log", $filesinpackage); }	
-
-					if ( ! ( $#{$filesinpackage} > -1 ))
-					{
-						push(@installer::globals::emptypackages, $packagename);
-                        $installer::logger::Lang->print("\n");
-                        $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n", $packagename); 
-						next;	# next package, end of loop !
-					}
-				}
-
-				# adding directories, files and links into epm file
-			
-				installer::epmfile::put_directories_into_epmfile($dirsinpackage, \@epmfile, $allvariableshashref, $packagerootpath);
-				installer::epmfile::put_files_into_epmfile($filesinpackage, \@epmfile );
-				installer::epmfile::put_links_into_epmfile($linksinpackage, \@epmfile );
-				installer::epmfile::put_unixlinks_into_epmfile($unixlinksinpackage, \@epmfile );
-
-				if ((!( $shellscriptsfilename eq "" )) && (!($installer::globals::iswindowsbuild))) { installer::epmfile::adding_shellscripts_to_epm_file(\@epmfile, $shellscriptsfilename, $packagerootpath, $allvariableshashref, $filesinpackage); }
-
-				installer::files::save_file($completeepmfilename ,\@epmfile);
-
-				# ... splitting the rootpath into a relocatable part and a static part, if possible
-
-				my $staticpath = "";
-				my $relocatablepath = "";
-				# relocatable path can be defined in package list
-				if ( $onepackage->{'relocatablepath'} ) { $relocatablepath = $onepackage->{'relocatablepath'}; }
-				# setting fix part and variable part of destination path
-				installer::epmfile::analyze_rootpath($packagerootpath, \$staticpath, \$relocatablepath, $allvariableshashref);
-				
-				# ... replacing the variable PRODUCTDIRECTORYNAME in the shellscriptfile by $staticpath
-
-				installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "PRODUCTDIRECTORYNAME", $staticpath);
-				installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "SOLSUREPACKAGEPREFIX", $allvariableshashref->{'SOLSUREPACKAGEPREFIX'});
-				installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "UREPACKAGEPREFIX", $allvariableshashref->{'UREPACKAGEPREFIX'});
-				# installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "BASISDIRECTORYVERSION", $allvariableshashref->{'OOOBASEVERSION'});
-				installer::files::save_file($completeepmfilename ,\@epmfile);
-
-				#######################################################
-				# Now the complete content of the package is known,
-				# including variables and shell scripts.
-				# Create the package or using the package pool?
-				#######################################################
-
-				my $use_package_from_pool = 0;
-				if ( $allvariableshashref->{'POOLPRODUCT'} ) { $use_package_from_pool = installer::packagepool::package_is_up_to_date($allvariableshashref, $onepackage, $packagename, \@epmfile, $filesinpackage, $installdir, $installer::globals::epmoutpath, $languagestringref); }
-
-				if ( $use_package_from_pool == 3 ) # repeat this package later
-				{	
-					my $package_is_creatable = installer::packagepool::check_package_availability($packagename);
-
-					if (( ! $package_is_creatable ) && ( ! exists($installer::globals::poolshiftedpackages{$packagename}) ))
-					{
-						splice(@{$packages}, $k, 1);	# removing package ...
-						push(@{$packages}, $onepackage);  # ... and adding it to the end
-						$installer::globals::poolshiftedpackages{$packagename} = 1;	# only shifting each package once
-						$k--;														# decreasing the counter
-						$installer::logger::Info->print("\n");
-						$installer::logger::Info->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
-						$installer::logger::Lang->print("\n");
-						$installer::logger::Lang->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
-						next;														# repeating this iteration with new package
-					}
-				}
-
-				if ( $use_package_from_pool == 4 ) # There was a problem with pooling. Repeat this package immediately.
-				{
-						$k--;														# decreasing the counter
-						$installer::logger::Info->print("\n");
-						$installer::logger::Info->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
-						$installer::logger::Lang->print("\n");
-						$installer::logger::Lang->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
-						next;														# repeating this iteration
-				}
-
-				if ( $use_package_from_pool == 0 )
-				{	
-					# changing into the "install" directory to create installation sets
-	
-					$currentdir = cwd();	# $currentdir is global in this file
-
-					chdir($installdir);		# changing into install directory ($installdir is global in this file)
-
-					###########################################
-					# Starting epm
-					###########################################
-
-					# With a patched epm, it is now possible to set the relocatable directory, change 
-					# the directory in which the packages are created, setting "requires" and "provides"
-					# (Linux) or creating the "depend" file (Solaris) and finally to begin
-					# the packaging process with standard tooling and standard parameter
-					# Linux: Adding into the spec file: Prefix: /opt
-					# Solaris: Adding into the pkginfo file: BASEDIR=/opt
-					# Attention: Changing of the path can influence the shell scripts
-				
-					if (( $installer::globals::is_special_epm ) && ( ($installer::globals::islinuxrpmbuild) || ($installer::globals::issolarispkgbuild) ))	# special handling only for Linux RPMs and Solaris Packages
-					{
-						if ( $installer::globals::call_epm )	# only do something, if epm is really executed
-						{
-							# ... now epm can be started, to create the installation sets
-
-							$installer::logger::Info->print( "... starting patched epm ... \n" );
-
-							installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref);
-
-							my $newepmdir = installer::epmfile::prepare_packages($loggingdir, $packagename, $staticpath, $relocatablepath, $onepackage, $allvariableshashref, $filesinpackage, $languagestringref);	# adding the line for Prefix / Basedir, include rpmdir
-
-							installer::epmfile::create_packages_without_epm($newepmdir, $packagename, $includepatharrayref, $allvariableshashref, $languagestringref);	# start to package
-
-							# finally removing all temporary files
-
-							installer::epmfile::remove_temporary_epm_files($newepmdir, $loggingdir, $packagename);
-
-							# Installation:
-							# Install: pkgadd -a myAdminfile -d ./SUNWso8m34.pkg
-							# Install: rpm -i --prefix=/opt/special --nodeps so8m35.rpm
-
-							installer::epmfile::create_new_directory_structure($newepmdir);
-							$installer::globals::postprocess_specialepm = 1;
-
-							# solaris patch not needed anymore						
-							# if (( $installer::globals::patch ) && ( $installer::globals::issolarisx86build )) { installer::worker::fix2_solaris_x86_patch($packagename, $installer::globals::epmoutpath); }
-						}		
-					}
-					else	# this is the standard epm (not relocatable) or ( nonlinux and nonsolaris )
-					{			
-						installer::epmfile::resolve_path_in_epm_list_before_packaging(\@epmfile, $completeepmfilename, "\$\$PRODUCTINSTALLLOCATION", $relocatablepath);
-						installer::files::save_file($completeepmfilename ,\@epmfile);	# Warning for pool, content of epm file is changed.
-
-						if ( $installer::globals::call_epm )
-						{
-							# ... now epm can be started, to create the installation sets
-
-							$installer::logger::Info->print( "... starting unpatched epm ... \n" );
-			
-							if ( $installer::globals::call_epm ) { installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref); }
-
-							if (($installer::globals::islinuxrpmbuild) || ($installer::globals::issolarispkgbuild) || ($installer::globals::debian))
-							{
-								$installer::globals::postprocess_standardepm = 1;
-							}
-						}
-					}
-
-					if ( $allvariableshashref->{'POOLPRODUCT'} ) { installer::packagepool::put_content_into_pool($packagename, $installdir, $installer::globals::epmoutpath, $filesinpackage, \@epmfile); }
-
-					chdir($currentdir);	# changing back into start directory
-
-				} # end of "if ( ! $use_package_from_pool ) 
-
-			} # end of "if ( ! $installer::globals::simple ) 
-
-			###########################################
-			# xpd installation mechanism
-			###########################################
-
-			# Creating the xpd file for the package. This has to happen always, not determined by $use_package_from_pool
-
-			if ( $installer::globals::isxpdplatform )
-			{
-				if (( ! $installer::globals::languagepack ) && ( ! $installer::globals::patch ))
-				{
-				    if (( $allvariableshashref->{'XPDINSTALLER'} ) && ( $installer::globals::call_epm != 0 ))
-				    {
-						installer::xpdinstaller::create_xpd_file($onepackage, $packages, $languagestringref, $allvariableshashref, $modulesinproductarrayref, $installdir, $installer::globals::epmoutpath, $linkpackage, \%installer::globals::xpdpackageinfo);
-						$installer::globals::xpd_files_prepared = 1;
-						%installer::globals::xpdpackageinfo = ();
-			    	}
-			    }
-			}
-
-			if ( $installer::globals::makelinuxlinkrpm ) { $k--; }	# decreasing the counter to create the link rpm!
-
-		}	# end of "for ( my $k = 0; $k <= $#{$packages}; $k++ )"
-
-		installer::packagepool::log_pool_statistics();
-
-		##############################################################
-		# Post epm functionality, after the last package is packed
-		##############################################################
-
-		if ( $installer::globals::postprocess_specialepm )
-		{
-			installer::logger::include_header_into_logfile("Post EPM processes (Patched EPM):");
-
-			chdir($installdir);
-
-			# Copying the cde, kde and gnome packages into the installation set
-			if ( $installer::globals::addsystemintegration ) { installer::epmfile::put_systemintegration_into_installset($installer::globals::epmoutpath, $includepatharrayref, $allvariableshashref, $modulesinproductarrayref); }
-
-			# Adding license and readme into installation set
-			# if ($installer::globals::addlicensefile) { installer::epmfile::put_installsetfiles_into_installset($installer::globals::epmoutpath); }
-			if ($installer::globals::addlicensefile) { installer::worker::put_scpactions_into_installset("."); }
-
-			# Adding child projects to installation dynamically
-			if ($installer::globals::addchildprojects) { installer::epmfile::put_childprojects_into_installset($installer::globals::epmoutpath, $allvariableshashref, $modulesinproductarrayref, $includepatharrayref); }
-
-			# Adding license file into setup
-			if ( $allvariableshashref->{'PUT_LICENSE_INTO_SETUP'} ) { installer::worker::put_license_into_setup(".", $includepatharrayref); }
-
-			# Creating installation set for Unix language packs, that are not part of multi lingual installation sets
-			if ( ( $installer::globals::languagepack ) && ( ! $installer::globals::debian ) && ( ! $installer::globals::makedownload ) ) { installer::languagepack::build_installer_for_languagepack($installer::globals::epmoutpath, $allvariableshashref, $includepatharrayref, $languagesarrayref, $languagestringref); }
-
-			# Finalizing patch installation sets
-			if (( $installer::globals::patch ) && ( $installer::globals::issolarispkgbuild )) { installer::epmfile::finalize_patch($installer::globals::epmoutpath, $allvariableshashref); }
-			if (( $installer::globals::patch ) && ( $installer::globals::islinuxrpmbuild )) { installer::epmfile::finalize_linux_patch($installer::globals::epmoutpath, $allvariableshashref, $includepatharrayref); }
-
-			# Copying the xpd installer into the installation set
-			if (( $allvariableshashref->{'XPDINSTALLER'} ) && ( $installer::globals::isxpdplatform ) && ( $installer::globals::xpd_files_prepared ))
-			{
-				installer::xpdinstaller::create_xpd_installer($installdir, $allvariableshashref, $languagestringref);
-				$installer::globals::addjavainstaller = 0;	# only one java installer possible
-			}
-
-			# Copying the java installer into the installation set
-			chdir($currentdir);	# changing back into start directory
-			if ( $installer::globals::addjavainstaller ) { installer::javainstaller::create_java_installer($installdir, $installer::globals::epmoutpath, $languagestringref, $languagesarrayref, $allvariableshashref, $includepatharrayref, $modulesinproductarrayref); }
-		}
-
-		if ( $installer::globals::postprocess_standardepm )
-		{
-			installer::logger::include_header_into_logfile("Post EPM processes (Standard EPM):");
-
-			chdir($installdir);
-			
-			# determine the destination directory
-			my $newepmdir = installer::epmfile::determine_installdir_ooo();
-
-			# Copying the cde, kde and gnome packages into the installation set
-			if ( $installer::globals::addsystemintegration ) { installer::epmfile::put_systemintegration_into_installset($newepmdir, $includepatharrayref, $allvariableshashref, $modulesinproductarrayref); }
-
-			# Adding license and readme into installation set
-			# if ($installer::globals::addlicensefile) { installer::epmfile::put_installsetfiles_into_installset($newepmdir); }
-			if ($installer::globals::addlicensefile) { installer::worker::put_scpactions_into_installset("."); }
-
-			# Adding license file into setup
-			if ( $allvariableshashref->{'PUT_LICENSE_INTO_SETUP'} ) { installer::worker::put_license_into_setup(".", $includepatharrayref); }
-
-			# Creating installation set for Unix language packs, that are not part of multi lingual installation sets
-			if ( ( $installer::globals::languagepack ) && ( ! $installer::globals::debian ) && ( ! $installer::globals::makedownload ) ) { installer::languagepack::build_installer_for_languagepack($newepmdir, $allvariableshashref, $includepatharrayref, $languagesarrayref, $languagestringref); }
-
-			chdir($currentdir);	# changing back into start directory
-		}
-
-		if (( $installer::globals::issolarispkgbuild ) && ( $allvariableshashref->{'COLLECT_PKGMAP'} )) { installer::worker::collectpackagemaps($installdir, $languagestringref, $allvariableshashref); }
-		
-		#######################################################
-		# Analyzing the log file
-		#######################################################
-
-		my $is_success = 0;
-		my $finalinstalldir = "";
-
-		installer::worker::clean_output_tree();	# removing directories created in the output tree
-		($is_success, $finalinstalldir) = installer::worker::analyze_and_save_logfile($loggingdir, $installdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
-		my $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "downloadname");
-		if ( $is_success ) { installer::followme::save_followme_info($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref, $current_install_number, $loggingdir, $installlogdir); }
-
-		#######################################################
-		# Creating download installation set
-		#######################################################
-
-		if ( $installer::globals::makedownload )
-		{
-			my $create_download = 0;
-			if ( $$downloadname ne "" ) { $create_download = 1; }
-			if (( $is_success ) && ( $create_download ) && ( $ENV{'ENABLE_DOWNLOADSETS'} ))
-			{
-				my $downloaddir = installer::download::create_download_sets($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref);
-				installer::worker::analyze_and_save_logfile($loggingdir, $downloaddir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
-			}
-		}
-
-		#######################################################
-		# Creating jds installation set
-		#######################################################
-
-		if ( $installer::globals::makejds )
-		{
-			my $create_jds = 0;
-
-			if ( $allvariableshashref->{'JDSBUILD'} ) { $create_jds = 1; }
-			if (! $installer::globals::issolarispkgbuild ) { $create_jds = 0; }
-
-			if (( $is_success ) && ( $create_jds ))
-			{
-				if ( ! $installer::globals::jds_language_controlled )
-				{
-					my $correct_language = installer::worker::check_jds_language($allvariableshashref, $languagestringref);
-					$installer::globals::correct_jds_language = $correct_language;
-					$installer::globals::jds_language_controlled = 1;
-				}
-
-				if ( $installer::globals::correct_jds_language )
-				{
-					my $jdsdir = installer::worker::create_jds_sets($finalinstalldir, $allvariableshashref, $languagestringref, $languagesarrayref, $includepatharrayref);
-					installer::worker::clean_jds_temp_dirs();
-					installer::worker::analyze_and_save_logfile($loggingdir, $jdsdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
-				}
-			}
-		}
-
-	}	# end of "if (!( $installer::globals::iswindowsbuild ))"
-
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nEnd of part 2a: All non-Windows platforms\n"); }
-
-	#################################################
-	# Part 2b: The Windows platform
-	#################################################
-
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 2b: The Windows platform\n"); }
-
-	#####################################################################
-	# ... creating idt files ...
-	# Only for Windows builds ($installer::globals::compiler is wntmsci)
-	#####################################################################
-	
-	if ( $installer::globals::iswindowsbuild )
-	{
-		###########################################
-		# Stripping libraries
-		###########################################
-
-		# Building for gcc build in cws requires, that all files are stripped before packaging:
-		# 1. copy all files that need to be stripped locally 
-		# 2. strip all these files
-
-		if ( $installer::globals::compiler =~ /wntgcci/ )
-		{
-		    installer::windows::strip::strip_binaries($filesinproductlanguageresolvedarrayref, $languagestringref);
-		    if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16e.log", $filesinproductlanguageresolvedarrayref); }
-		}
-
-		$installdir = installer::worker::create_installation_directory($shipinstalldir, $languagestringref, \$current_install_number);
-
- 		my $idtdirbase = installer::systemactions::create_directories("idt_files", $languagestringref);
- 		$installer::globals::infodirectory = installer::systemactions::create_directories("info_files", $languagestringref);
-		my $installlogdir = installer::systemactions::create_directory_next_to_directory($installdir, "log");
-		# my $installchecksumdir = installer::systemactions::create_directory_next_to_directory($installdir, "checksum");
-
-		#################################################################################
-		# Preparing cabinet files from package definitions
-		#################################################################################
-
-		# installer::packagelist::prepare_cabinet_files($packages, $allvariableshashref, $$languagestringref);
-		installer::packagelist::prepare_cabinet_files($packages, $allvariableshashref);
-		# printing packages content:
-		installer::packagelist::log_cabinet_assignments();
-
-		#################################################################################
-		# Begin of functions that are used for the creation of idt files (Windows only)
-		#################################################################################
-		
-		$installer::logger::Info->print( "... creating idt files ...\n" );
-
-		installer::logger::include_header_into_logfile("Creating idt files:");
-
-		my $newidtdir = $idtdirbase . $installer::globals::separator . "00";	# new files into language independent directory "00"
-		installer::systemactions::create_directory($newidtdir);
-
-		my @allfilecomponents = ();
-		my @allregistrycomponents = ();
-
-		# Collecting all files with flag "BINARYTABLE"
-		my $binarytablefiles = installer::worker::collect_all_items_with_special_flag($filesinproductlanguageresolvedarrayref ,"BINARYTABLE");
-	
-		# Removing all files with flag "BINARYTABLE_ONLY"
-		@installer::globals::binarytableonlyfiles = ();
-		$filesinproductlanguageresolvedarrayref = installer::worker::remove_all_items_with_special_flag($filesinproductlanguageresolvedarrayref ,"BINARYTABLE_ONLY");
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles17.log", $filesinproductlanguageresolvedarrayref); }
-
-		# Collecting all profileitems with flag "INIFILETABLE" for table "IniFile"
-		my $inifiletableentries = installer::worker::collect_all_items_with_special_flag($profileitemsinproductlanguageresolvedarrayref ,"INIFILETABLE");
-
-		# Creating the important dynamic idt files
-		installer::windows::msiglobal::set_msiproductversion($allvariableshashref);
-		installer::windows::msiglobal::put_msiproductversion_into_bootstrapfile($filesinproductlanguageresolvedarrayref);
-
-		# Add cabinet assignments to files
-		installer::windows::file::assign_cab_to_files($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles17a.log", $filesinproductlanguageresolvedarrayref); }
-		installer::windows::file::assign_sequencenumbers_to_files($filesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles17b.log", $filesinproductlanguageresolvedarrayref); }
-
-		# Collection all available directory trees
-		installer::windows::directory::collectdirectorytrees($directoriesforepmarrayref);
-
-		$filesinproductlanguageresolvedarrayref = installer::windows::file::create_files_table($filesinproductlanguageresolvedarrayref, \@allfilecomponents, $newidtdir, $allvariableshashref, $uniquefilename);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles17c.log", $filesinproductlanguageresolvedarrayref); }
-
-		installer::windows::directory::create_directory_table($directoriesforepmarrayref, $newidtdir, $allvariableshashref, $shortdirname, $loggingdir);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles18.log", $filesinproductlanguageresolvedarrayref); }
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforidt1.log", $directoriesforepmarrayref); }
-
-		# Attention: The table "Registry.idt" contains language specific strings -> parameter: $languagesarrayref !
-		installer::windows::registry::create_registry_table($registryitemsinproductlanguageresolvedarrayref, \@allregistrycomponents, $newidtdir, $languagesarrayref, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems4.log", $registryitemsinproductlanguageresolvedarrayref); }
-	
-		installer::windows::component::create_component_table($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $directoriesforepmarrayref, \@allfilecomponents, \@allregistrycomponents, $newidtdir, $componentid, $componentidkeypath, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles19.log", $filesinproductlanguageresolvedarrayref); }
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems5.log", $registryitemsinproductlanguageresolvedarrayref); }
-
-		# Attention: The table "Feature.idt" contains language specific strings -> parameter: $languagesarrayref !
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules4.log", $modulesinproductlanguageresolvedarrayref); }
-		installer::windows::feature::add_uniquekey($modulesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules4a.log", $modulesinproductlanguageresolvedarrayref); }
-		$modulesinproductlanguageresolvedarrayref = installer::windows::feature::sort_feature($modulesinproductlanguageresolvedarrayref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules4b.log", $modulesinproductlanguageresolvedarrayref); }
-		installer::windows::feature::create_feature_table($modulesinproductlanguageresolvedarrayref, $newidtdir, $languagesarrayref, $allvariableshashref);
-
-		installer::windows::featurecomponent::create_featurecomponent_table($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $newidtdir);
-
-		installer::windows::media::create_media_table($filesinproductlanguageresolvedarrayref, $newidtdir, $allvariableshashref);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles20.log", $filesinproductlanguageresolvedarrayref); }
-
-		installer::windows::font::create_font_table($filesinproductlanguageresolvedarrayref, $newidtdir);
-
-		# Attention: The table "Shortcut.idt" contains language specific strings -> parameter: $languagesarrayref !
-		# Attention: Shortcuts (Folderitems) have icon files, that have to be copied into the Icon directory (last parameter)
-		my @iconfilecollector = ();
-
-		installer::windows::shortcut::create_shortcut_table($filesinproductlanguageresolvedarrayref, $linksinproductlanguageresolvedarrayref, $folderinproductlanguageresolvedarrayref, $folderitemsinproductlanguageresolvedarrayref, $directoriesforepmarrayref, $newidtdir, $languagesarrayref, $includepatharrayref, \@iconfilecollector);
-		if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems4.log", $folderitemsinproductlanguageresolvedarrayref); }
-
-		installer::windows::inifile::create_inifile_table($inifiletableentries, $filesinproductlanguageresolvedarrayref, $newidtdir);
-
-		installer::windows::icon::create_icon_table(\@iconfilecollector, $newidtdir);	 # creating the icon table with all iconfiles used as shortcuts (FolderItems)
-
-		installer::windows::createfolder::create_createfolder_table($directoriesforepmarrayref, $filesinproductlanguageresolvedarrayref, $newidtdir, $allvariableshashref);
-
-		installer::windows::upgrade::create_upgrade_table($newidtdir, $allvariableshashref);
-
-		if ( ! $installer::globals::languagepack )	 # the following tables not for language packs
-		{
-			installer::windows::removefile::create_removefile_table($folderitemsinproductlanguageresolvedarrayref, $newidtdir);
-
-			installer::windows::selfreg::create_selfreg_table($filesinproductlanguageresolvedarrayref, $newidtdir);
-
-			# Adding Assemblies into the tables MsiAssembly and MsiAssemblyName dynamically
-			installer::windows::assembly::create_msiassembly_table($filesinproductlanguageresolvedarrayref, $newidtdir);
-			installer::windows::assembly::create_msiassemblyname_table($filesinproductlanguageresolvedarrayref, $newidtdir);
-			installer::windows::assembly::add_assembly_condition_into_component_table($filesinproductlanguageresolvedarrayref, $newidtdir);
-		}
-
-        $installer::logger::Lang->print("\n");
-
-		# Localizing the language dependent idt files
-		# For every language there will be a localized msi database
-		# For multilingual installation sets, the differences of this
-		# databases have to be stored in transforms.
-		
-		for ( my $m = 0; $m <= $#{$languagesarrayref}; $m++ )
-		{
-			my $onelanguage = ${$languagesarrayref}[$m];
-
-			my $is_bidi = 0;
-			if ( installer::existence::exists_in_array($onelanguage, \@installer::globals::bidilanguages) ) { $is_bidi = 1; }
-
-			my $languageidtdir = $idtdirbase . $installer::globals::separator . $onelanguage;
-			if ( -d $languageidtdir ) { installer::systemactions::remove_complete_directory($languageidtdir, 1); }
-			installer::systemactions::create_directory($languageidtdir);
-
-			# Copy the template idt files and the new created idt files into this language directory
-
-			$installer::logger::Info->print( "... copying idt files ...\n" );
-
-			installer::logger::include_header_into_logfile("Copying idt files to $languageidtdir:");
-						
-			installer::windows::idtglobal::prepare_language_idt_directory($languageidtdir, $newidtdir, $onelanguage, $filesinproductlanguageresolvedarrayref, \@iconfilecollector, $binarytablefiles, $allvariableshashref);
-
-			if (( ! $installer::globals::languagepack ) && ( ! $allvariableshashref->{'NOLANGUAGESELECTIONPRODUCT'} ))
-			{
-				# For multilingual installation sets, the dialog for the language selection can now be prepared, with 
-				# a checkbox for each available language. This has to happen before the following translation.
-				# The new controls have to be added into the Control.idt
-
-				my $controlidttablename = $languageidtdir . $installer::globals::separator . "Control.idt";
-				my $controlidttable = installer::files::read_file($controlidttablename);
-				installer::windows::idtglobal::add_language_checkboxes_to_database($controlidttable, $languagesarrayref);
-				installer::files::save_file($controlidttablename, $controlidttable);
-                $installer::logger::Lang->printf("Added checkboxes for language selection dialog into table %s\n",
-                    $controlidttablename); 
-			}
-
-			# Now all files are copied into a language specific directory
-			# The template idt files can be translated
-
-			$installer::logger::Info->print( "... localizing idt files (language: $onelanguage) ...\n" );
-
-			installer::logger::include_header_into_logfile("Localizing idt files (Language: $onelanguage):");
-
-			my @translationfiles = ();			# all idt files, that need a translation
-			push(@translationfiles, "ActionTe.idt");			
-			push(@translationfiles, "Control.idt");			
-			push(@translationfiles, "CustomAc.idt");			
-			push(@translationfiles, "Error.idt");			
-			push(@translationfiles, "LaunchCo.idt");			
-			push(@translationfiles, "RadioBut.idt");			
-			push(@translationfiles, "Property.idt");			
-			push(@translationfiles, "UIText.idt");			
-		
-			my $oneidtfilename;
-			my $oneidtfile;
-		
-			foreach $oneidtfilename (@translationfiles)
-			{	
-				my $languagefilename = installer::windows::idtglobal::get_languagefilename($oneidtfilename, $installer::globals::idtlanguagepath);
-				my $languagefile = installer::files::read_file($languagefilename);
-
-				$oneidtfilename = $languageidtdir . $installer::globals::separator . $oneidtfilename;
-				$oneidtfile = installer::files::read_file($oneidtfilename);
-
-				# Now the substitution can start
-				installer::windows::idtglobal::translate_idtfile($oneidtfile, $languagefile, $onelanguage);
-				 
-				installer::files::save_file($oneidtfilename, $oneidtfile);
-
-                $installer::logger::Lang->printf("Translated idt file: %s into language %s\n",
-                    $oneidtfilename,
-                    $onelanguage); 
-                $installer::logger::Lang->printf("Used languagefile: %s\n", $languagefilename);
-			}	
-			
-			# setting the encoding in every table (replacing WINDOWSENCODINGTEMPLATE)
-			
-			installer::windows::idtglobal::setencoding($languageidtdir, $onelanguage);
-
-			# setting bidi attributes, if required
-
-			if ( $is_bidi ) { installer::windows::idtglobal::setbidiattributes($languageidtdir, $onelanguage); }
-
-			# setting the encoding in every table (replacing WINDOWSENCODINGTEMPLATE)
-			installer::windows::idtglobal::set_multilanguageonly_condition($languageidtdir);
-			
-			# include the license text into the table Control.idt
-			
-			if ( ! $allvariableshashref->{'HIDELICENSEDIALOG'} )
-			{
-				my $licensefilesource = installer::windows::idtglobal::get_rtflicensefilesource($onelanguage, $includepatharrayref_lang);
-				my $licensefile = installer::files::read_file($licensefilesource);
-				installer::scpzipfiles::replace_all_ziplistvariables_in_rtffile($licensefile, $allvariablesarrayref, $onelanguage, $loggingdir);
-				my $controltablename = $languageidtdir . $installer::globals::separator . "Control.idt";
-				my $controltable = installer::files::read_file($controltablename);
-				installer::windows::idtglobal::add_licensefile_to_database($licensefile, $controltable);
-				installer::files::save_file($controltablename, $controltable);
-
-                $installer::logger::Lang->printf("Added licensefile %s into database %s\n",
-                    $licensefilesource,
-                    $controltablename); 
-			}
-
-			# include a component into environment table if required
-			
-			installer::windows::component::set_component_in_environment_table($languageidtdir, $filesinproductlanguageresolvedarrayref);
-
-			# include the ProductCode and the UpgradeCode from codes-file into the Property.idt
-			
-			installer::windows::property::set_codes_in_property_table($languageidtdir);
-			
-			# the language specific properties can now be set in the Property.idt
-			
-			installer::windows::property::update_property_table($languageidtdir, $onelanguage, $allvariableshashref, $languagestringref);
-
-			# replacing variables in RegLocat.idt
-			
-			installer::windows::msiglobal::update_reglocat_table($languageidtdir, $allvariableshashref);
-
-			# replacing variables in RemoveRe.idt (RemoveRegistry.idt)
-			
-			installer::windows::msiglobal::update_removere_table($languageidtdir);
-			
-			# adding language specific properties for multilingual installation sets
-			
-			installer::windows::property::set_languages_in_property_table($languageidtdir, $languagesarrayref);
-			
-			# adding settings into CheckBox.idt
-			installer::windows::property::update_checkbox_table($languageidtdir, $allvariableshashref);
-
-			# adding the files from the binary directory into the binary table
-			installer::windows::binary::update_binary_table($languageidtdir, $filesinproductlanguageresolvedarrayref, $binarytablefiles);
-
-			# setting patch codes to detect installed products
-
-			if (( $installer::globals::patch ) || ( $installer::globals::languagepack ) || ( $allvariableshashref->{'PDFCONVERTER'} )) { installer::windows::patch::update_patch_tables($languageidtdir, $allvariableshashref); }
-
-			# Adding Windows Installer CustomActions
-
-			installer::windows::idtglobal::addcustomactions($languageidtdir, $windowscustomactionsarrayref, $filesinproductlanguageresolvedarrayref);
-
-			# Adding child projects if specified
-
-			if ($installer::globals::addchildprojects)
-			{
-				# Adding child projects to installation dynamically (also in feature table)
-				installer::windows::idtglobal::add_childprojects($languageidtdir, $filesinproductlanguageresolvedarrayref, $allvariableshashref);
-				# setting Java variables for Java products
-				if ( $allvariableshashref->{'JAVAPRODUCT'} ) { installer::windows::java::update_java_tables($languageidtdir, $allvariableshashref); }
-			}
-
-			# Then the language specific msi database can be created
-			
-			if ( $installer::globals::iswin )	# only possible on a Windows platform
-			{
-				my $msidatabasename = installer::windows::msiglobal::get_msidatabasename($allvariableshashref, $onelanguage);
-				my $msifilename = $languageidtdir . $installer::globals::separator . $msidatabasename;
-
-				$installer::logger::Info->print( "... creating msi database (language $onelanguage) ... \n" );
-
-				installer::windows::msiglobal::set_uuid_into_component_table($languageidtdir, $allvariableshashref);	# setting new GUID for the components using the tool uuidgen.exe
-				installer::windows::msiglobal::prepare_64bit_database($languageidtdir, $allvariableshashref);	# making last 64 bit changes
-				installer::windows::msiglobal::create_msi_database($languageidtdir ,$msifilename);		
-
-				# validating the database 	# ToDo	
-
-				my $languagefile = installer::files::read_file($installer::globals::idtlanguagepath . $installer::globals::separator . "SIS.mlf");
-				# my $languagefile = installer::files::read_file($installer::globals::idtlanguagepath . $installer::globals::separator . "SIS.ulf");
-
-				installer::windows::msiglobal::write_summary_into_msi_database($msifilename, $onelanguage, $languagefile, $allvariableshashref);
-				
-				# copy msi database into installation directory
-
-				my $msidestfilename = $installdir . $installer::globals::separator . $msidatabasename;
-				installer::systemactions::copy_one_file($msifilename, $msidestfilename);				 
-			}
-		}
-
-		# Creating transforms, if the installation set has more than one language
-		# renaming the msi database and generating the setup.ini file
-
-		my $defaultlanguage = installer::languages::get_default_language($languagesarrayref);
-
-		if ( $installer::globals::iswin )	# only possible on a Windows platform
-		{					
-			if  ( $#{$languagesarrayref} > 0 )
-			{
-				installer::windows::msiglobal::create_transforms($languagesarrayref, $defaultlanguage, $installdir, $allvariableshashref);
-			}
-
-			installer::windows::msiglobal::rename_msi_database_in_installset($defaultlanguage, $installdir, $allvariableshashref);
-
-			if ( $allvariableshashref->{'ADDLANGUAGEINDATABASENAME'} ) { installer::windows::msiglobal::add_language_to_msi_database($defaultlanguage, $installdir, $allvariableshashref); }
-
-			$installer::logger::Info->print( "... generating setup.ini ...\n" );
-			
-			if ( ! $allvariableshashref->{'NOLOADERREQUIRED'} ) { installer::windows::msiglobal::create_setup_ini($languagesarrayref, $defaultlanguage, $installdir, $allvariableshashref); }
-		}
-
-		# Analyzing the ScpActions and copying the files into the installation set
-		# At least the loader.exe
-
-		$installer::logger::Info->print( "... copying files into installation set ...\n" );
-
-		# installer::windows::msiglobal::copy_scpactions_into_installset($defaultlanguage, $installdir, $scpactionsinproductlanguageresolvedarrayref);
-		installer::worker::put_scpactions_into_installset($installdir);
-
-		# ... copying the setup.exe
-
-		installer::windows::msiglobal::copy_windows_installer_files_into_installset($installdir, $includepatharrayref, $allvariableshashref);
-
-		# ... copying the child projects
-
-		if ($installer::globals::addchildprojects)
-		{
-			installer::windows::msiglobal::copy_child_projects_into_installset($installdir, $allvariableshashref);
-		}
-
-		$installer::logger::Info->print( "... creating ddf files ...\n" );
-
-		# Creating all needed ddf files and generating a list
-		# for the package process containing all system calls
-
-		my $ddfdir = installer::systemactions::create_directories("ddf", $languagestringref);
-
-		$installer::globals::packjobref = installer::windows::msiglobal::generate_cab_file_list($filesinproductlanguageresolvedarrayref, $installdir, $ddfdir, $allvariableshashref);
-
-		# Update and patch reasons the pack order needs to be saved
-		installer::windows::msiglobal::save_packorder();
-
-        $installer::logger::Info->print("\n"); 
-
-		#######################################################
-		# Finally really create the installation packages,
-		# Only for Windows and only on a windows platform.
-		#######################################################
-
-		if ( $installer::globals::iswin )	# only possible on a Windows platform
-		{
-			$installer::logger::Info->print( "... packaging installation set ... \n" );
-			installer::windows::msiglobal::execute_packaging($installer::globals::packjobref, $loggingdir, $allvariableshashref);
-			if ( $installer::globals::include_cab_in_msi ) { installer::windows::msiglobal::include_cabs_into_msi($installdir); }
-		}
-
-		#######################################################
-		# Analyzing the log file
-		#######################################################
-
-		my $is_success = 0;
-		my $finalinstalldir = "";
-		installer::worker::clean_output_tree();	# removing directories created in the output tree
-		($is_success, $finalinstalldir) = installer::worker::analyze_and_save_logfile($loggingdir, $installdir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
-
-		
-		#######################################################
-		# Creating download installation set
-		#######################################################
-
-		my $create_download = 0;
-		my $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "downloadname");
-		if ( $installer::globals::languagepack ) { $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "langpackdownloadname"); }
-		if ( $installer::globals::patch ) { $downloadname = installer::ziplist::getinfofromziplist($allsettingsarrayref, "patchdownloadname"); }
-
-		if ( $is_success ) { installer::followme::save_followme_info($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref, $current_install_number, $loggingdir, $installlogdir); }
-
-		if ( $$downloadname ne "" ) { $create_download = 1; }
-		if (( $is_success ) && ( $create_download ) && ( $ENV{'ENABLE_DOWNLOADSETS'} ))
-		{
-			my $downloaddir = installer::download::create_download_sets($finalinstalldir, $includepatharrayref, $allvariableshashref, $$downloadname, $languagestringref, $languagesarrayref);
-			installer::worker::analyze_and_save_logfile($loggingdir, $downloaddir, $installlogdir, $allsettingsarrayref, $languagestringref, $current_install_number);
-		}
-		
-	}	 # end of "if ( $installer::globals::iswindowsbuild )"
-
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("\nEnd of part 2b: The Windows platform\n"); }
+	if ($installer::globals::iswindowsbuild)
+    {
+        MakeWindowsBuild(
+            $allvariableshashref,
+            $allsettingsarrayref,
+            $current_install_number,
+            $directoriesforepmarrayref,
+            $filesinproductlanguageresolvedarrayref,
+            $folderitemsinproductlanguageresolvedarrayref,
+            $includepatharrayref,
+            $includepatharrayref_lang,
+            $installdir,
+            $languagesarrayref,
+            $languagestringref,
+            $linksinproductlanguageresolvedarrayref,
+            $loggingdir,
+            $modulesinproductlanguageresolvedarrayref,
+            $packages,
+            $profileitemsinproductlanguageresolvedarrayref,
+            $registryitemsinproductlanguageresolvedarrayref,
+            $shipinstalldir,
+            $windowscustomactionsarrayref,
+            $folderinproductlanguageresolvedarrayref);
+    }
+    else
+    {
+        MakeNonWindowsBuild(
+            $allvariableshashref,
+            $allsettingsarrayref,
+            $current_install_number,
+            $directoriesforepmarrayref,
+            $filesinproductlanguageresolvedarrayref,
+            $includepatharrayref,
+            $languagesarrayref,
+            $languagestringref,
+            $linksinproductlanguageresolvedarrayref,
+            $unixlinksinproductlanguageresolvedarrayref,
+            $loggingdir,
+            $modulesinproductarrayref,
+            $packages,
+            $shipinstalldir,
+            $currentdir);
+    }
 
 	# saving file_info file for later analysis
 	my $speciallogfilename = "fileinfo_" . $installer::globals::product . "\.log";
diff --git a/main/solenv/bin/modules/installer/converter.pm b/main/solenv/bin/modules/installer/converter.pm
index d4dc77a..0846fed 100644
--- a/main/solenv/bin/modules/installer/converter.pm
+++ b/main/solenv/bin/modules/installer/converter.pm
@@ -305,18 +305,17 @@
 
 sub copy_collector
 {
-	my ( $oldcollector ) = @_;
+	my ($oldcollector) = @_;
 
 	my @newcollector = ();
 
-	for ( my $i = 0; $i <= $#{$oldcollector}; $i++ )
+	foreach my $oldhash (@$oldcollector)
 	{
 		my %newhash = ();
-		my $key;
 	
-		foreach $key (keys %{${$oldcollector}[$i]})
+		while (my ($key, $value) = each %$oldhash)
 		{
-			$newhash{$key} = ${$oldcollector}[$i]->{$key};
+			$newhash{$key} = $value;
 		}
 				
 		push(@newcollector, \%newhash);
diff --git a/main/solenv/bin/modules/installer/globals.pm b/main/solenv/bin/modules/installer/globals.pm
index 915c039..4947b89 100644
--- a/main/solenv/bin/modules/installer/globals.pm
+++ b/main/solenv/bin/modules/installer/globals.pm
@@ -263,7 +263,6 @@
 	$isopensourceproduct = 1;
 	$manufacturer = "";
 	$longmanufacturer = "";
-	$sundirname = "Oracle";
 	$codefilename = "codes.txt";
 	$componentfilename = "components.txt";	
 	$productcode = "";
@@ -364,7 +363,6 @@
 	@pcfdiffcomment = ();
 	@epmdifflist = ();
 	$desktoplinkexists = 0;
-	$sundirexists = 0;
 	$analyze_spellcheckerlanguage = 0;
 	%spellcheckerlanguagehash = ();
 	%spellcheckerfilehash = ();
@@ -392,11 +390,8 @@
 	$officedirhostname = "";
 	$basisdirhostname = "";
 	$uredirhostname = "";
-	$sundirhostname = "";
 	$officedirgid = "";
 	$basisdirgid = "";
-	$uredirgid = "";
-	$sundirgid = "";
 	
 	%sign_extensions = ("dll" => "1", "exe" => "1", "cab" => "1");
 	%treestyles = ();
diff --git a/main/solenv/bin/modules/installer/logger.pm b/main/solenv/bin/modules/installer/logger.pm
index 01cbdd8..51ba37f 100644
--- a/main/solenv/bin/modules/installer/logger.pm
+++ b/main/solenv/bin/modules/installer/logger.pm
@@ -89,6 +89,40 @@
     'is_show_log_id' => 0
     );
 
+
+
+=head2 SetupSimpleLogging ($filename)
+
+    Setup logging so that $Global, $Lang and $Info all print to the console AND to the log file.
+    
+=cut
+sub SetupSimpleLogging ($)
+{
+    my ($log_filename) = @_;
+
+    $Info = installer::logger->new("info",
+        'is_print_to_console' => 1,
+        'is_show_relative_time' => 1,
+        );
+    $Global = installer::logger->new("glob",
+        'is_print_to_console' => 0,
+        'is_show_relative_time' => 1,
+        'forward' => [$Info]
+        );
+    $Lang = installer::logger->new("lang",
+        'is_print_to_console' => 0,
+        'is_show_relative_time' => 1,
+        'forward' => [$Info]
+        );
+    $Info->set_filename($log_filename);
+    $Info->{'is_print_to_console'} = 1;
+    $installer::globals::quiet = 0;
+    starttime();
+}
+
+
+
+
 =head2 new($class, $id, @arguments)
 
     Create a new instance of the logger class.
@@ -119,7 +153,9 @@
         # Show log id (mostly for debugging the logger)
         'is_show_log_id' => 0,
         # Show the process id, useful on the console when doing a multiprocessor build.
-        'is_show_process_id' => 0
+        'is_show_process_id' => 0,
+        # Current indentation
+        'indentation' => "",
     };
     while (scalar @arguments >= 2)
     {
@@ -219,6 +255,7 @@
     {
         $line .= $pid . " : ";
     }
+    $line .= $self->{'indentation'};
     $line .= $message;
 
     # Print the line to a file or to the console or store it for later use.
@@ -359,6 +396,24 @@
 
 
 
+sub increase_indentation ($)
+{
+    my ($self) = @_;
+    $self->{'indentation'} .= "    ";
+}
+
+
+
+
+sub decrease_indentation ($)
+{
+    my ($self) = @_;
+    $self->{'indentation'} = substr($self->{'indentation'}, 4);
+}
+
+
+
+
 ####################################################
 # Including header files into the logfile
 ####################################################
@@ -637,6 +692,9 @@
 {
     my $message = shift;
     chomp $message;
+
+    PrintError($message);
+
     print STDERR "\n";
     print STDERR "**************************************************\n";
     print STDERR "ERROR: $message";
@@ -646,6 +704,18 @@
 }
 
 
+
+
+sub PrintError ($@)
+{
+    my ($format, @arguments) = @_;
+
+    $Info->printf("Error: ".$format, @arguments);
+}
+
+
+
+
 =head2 PrintStackTrace()
     This is for debugging the print and printf methods of the logger class and their use.
     Therefore we use the Perl print/printf directly and not the logger methods to avoid loops in case of errors.
diff --git a/main/solenv/bin/modules/installer/pathanalyzer.pm b/main/solenv/bin/modules/installer/pathanalyzer.pm
index df54fd8..266281e 100644
--- a/main/solenv/bin/modules/installer/pathanalyzer.pm
+++ b/main/solenv/bin/modules/installer/pathanalyzer.pm
@@ -46,6 +46,14 @@
 	}	
 }
 
+
+
+
+=head2
+
+    Despite its name, this function seems just to return the basename of the given filename.
+    
+=cut
 sub make_absolute_filename_to_relative_filename
 {
 	my ($longfilenameref) = @_;
diff --git a/main/solenv/bin/modules/installer/scppatchsoname.pm b/main/solenv/bin/modules/installer/scppatchsoname.pm
index 43f9ca9..e90b315 100644
--- a/main/solenv/bin/modules/installer/scppatchsoname.pm
+++ b/main/solenv/bin/modules/installer/scppatchsoname.pm
@@ -100,31 +100,10 @@
 
 	change_length_of_string(\$unicode_productname, $replacestring);
 
-	my $found1 = $onefile =~ s/$replacestring/$unicode_productname/sg;
-
-	my $found2 = 0;
-
-	if ( $styles =~ /\bPATCH_SO_NAME_Z\b/ )
-	{
-		# searching for "z" 
-
-		$onestring = "z" . chr(0);
-		$replacestring = "";
-		for ( my $i = 1; $i <= 80; $i++ ) { $replacestring .= $onestring; }
-
-		my $productname2 = $variableshashref->{'PRODUCTNAME'} . " " . $variableshashref->{'PRODUCTVERSION'};
-		if ( exists($onefilehash->{'FileDescriptionZ'}) ) { $productname2 = $onefilehash->{'FileDescriptionZ'}; }
-		my $unicode_productname2 = convert_to_unicode($productname2);
-
-		change_length_of_string_with_letter(\$unicode_productname2, $replacestring, $onestring);
-
-		$found2 = $onefile =~ s/$replacestring/$unicode_productname2/sg;
-	}
+	my $found = $onefile =~ s/$replacestring/$unicode_productname/sg;
 
 	installer::files::save_binary_file($onefile, $destpath);
 
-	my $found = $found1 + $found2;
-	
 	return $found;
 }
 
diff --git a/main/solenv/bin/modules/installer/scpzipfiles.pm b/main/solenv/bin/modules/installer/scpzipfiles.pm
index 242ed7c..6a1d4cb 100644
--- a/main/solenv/bin/modules/installer/scpzipfiles.pm
+++ b/main/solenv/bin/modules/installer/scpzipfiles.pm
@@ -29,29 +29,35 @@
 use installer::pathanalyzer;
 use installer::systemactions;
 
+use strict;
+
 ########################################################################################
 # Replacing all zip list variables in setup script and files with flag scpzip_replace
 ########################################################################################
 
-sub replace_all_ziplistvariables_in_file
+sub replace_all_ziplistvariables_in_file ($$)
 {
-	my ( $fileref, $variableshashref ) = @_;
+	my ($lines, $variables) = @_;
 
-	for ( my $i = 0; $i <= $#{$fileref}; $i++ )
+    my $count = scalar @$lines;
+	for (my $lineno=0; $lineno<$count; ++$lineno)
 	{
-		my $line = ${$fileref}[$i];
-
-		if ( $line =~ /^.*\$\{\w+\}.*$/ )	# only occurence of ${abc}
-		{			
-			my $key;
-
-			foreach $key (keys %{$variableshashref})
+        my $line = $lines->[$lineno];
+		if ($line =~ /\$\{/)  # early rejection of lines that don't need replacements
+		{
+            while (my ($key,$value) = each %$variables)
 			{
-				my $value = $variableshashref->{$key};
-				$key = '${' . $key . '}';
-				$line =~ s/\Q$key\E/$value/g;			
-				${$fileref}[$i] = $line;
+				my $pattern = '${' . $key . '}';
+				my $replacement_count = ($line =~ s/\Q$pattern\E/$value/g);
+                if ($key eq "PRODUCTADDON" && $replacement_count>0)
+                {
+                    $installer::logger::Lang->printf(
+                        "replaced PRODUCTADDON %d times in line %d\n",
+                        $replacement_count,
+                        $lineno);
+                }
 			}
+            $lines->[$lineno] = $line;
 		}
 	}
 }
@@ -61,39 +67,26 @@
 # the brackets are masked.
 ########################################################################################
 
-sub replace_all_ziplistvariables_in_rtffile
+sub replace_all_ziplistvariables_in_rtffile ($$)
 {
-	my ( $fileref, $variablesref, $onelanguage, $loggingdir ) = @_;
+	my ($lines, $variables) = @_;
 
-	# installer::files::save_file($loggingdir . "license_" . $onelanguage . "_before.rtf", $fileref);
-
-	for ( my $i = 0; $i <= $#{$fileref}; $i++ )
+    my $line_count = scalar @$lines;
+	for (my $i=0; $i<=$line_count; ++$i)
 	{
-		my $line = ${$fileref}[$i];
+		my $line = $lines->[$i];
 
-		if ( $line =~ /^.*\$\\\{\w+\\\}.*$/ )	# only occurence of $\{abc\}
-		{			
-			for ( my $j = 0; $j <= $#{$variablesref}; $j++ )
+		if ($line =~ /\$\\\{/) # early rejection of lines without variable references
+		{
+            while (my ($key, $value) = each (%$variables))
 			{
-				my $variableline = ${$variablesref}[$j];
-				
-				my ($key, $value);
-				
-				if ( $variableline =~ /^\s*([\w-]+?)\s+(.*?)\s*$/ )
-				{
-					$key = $1;
-					$value = $2;
-					$key = '$\{' . $key . '\}';
-				}
-				
+                my $pattern = '$\{' . $key . '\}';
 				$line =~ s/\Q$key\E/$value/g;
 
-				${$fileref}[$i] = $line;
 			}
+            $lines->[$i] = $line;
 		}
 	}
-
-	# installer::files::save_file($loggingdir . "license_" . $onelanguage . "_after.rtf", $fileref);
 }
 
 #########################################################
diff --git a/main/solenv/bin/modules/installer/scriptitems.pm b/main/solenv/bin/modules/installer/scriptitems.pm
index 8276cb6..030db92 100644
--- a/main/solenv/bin/modules/installer/scriptitems.pm
+++ b/main/solenv/bin/modules/installer/scriptitems.pm
@@ -37,6 +37,8 @@
 use SvnRevision;
 use ExtensionsLst;
 
+use strict;
+
 ################################################################
 # Resolving the GID for the directories defined in setup script
 ################################################################
@@ -45,8 +47,6 @@
 {
 	my ($directoryarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::resolve_all_directory_names : $#{$directoryarrayref}"); }
-
 	# After this procedure the hash shall contain the complete language 
 	# dependent path, not only the language dependent HostName.
 
@@ -160,8 +160,6 @@
 {
 	my ($productarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_delete_only_files_from_productlists : $#{$productarrayref}"); }
-
 	my @newitems = ();
 
 	for ( my $i = 0; $i <= $#{$productarrayref}; $i++ )
@@ -189,8 +187,6 @@
 {
 	my ($productarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_notinsuite_files_from_productlists : $#{$productarrayref}"); }
-
 	my @newitems = ();
 
 	for ( my $i = 0; $i <= $#{$productarrayref}; $i++ )
@@ -223,8 +219,6 @@
 {
 	my ($productarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_notinsuite_files_from_productlists : $#{$productarrayref}"); }
-
 	my @newitems = ();
 
 	for ( my $i = 0; $i <= $#{$productarrayref}; $i++ )
@@ -257,8 +251,6 @@
 {
 	my ($registryarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_uninstall_regitems_from_script : $#{$registryarrayref}"); }
-
 	my @newitems = ();
 
 	for ( my $i = 0; $i <= $#{$registryarrayref}; $i++ )
@@ -310,8 +302,6 @@
 {
 	my ($productarrayref, $languagesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::resolving_all_languages_in_productlists : $#{$productarrayref} : $#{$languagesarrayref}"); }
-
 	my @itemsinalllanguages = ();
 
 	my ($key, $value);
@@ -715,12 +705,6 @@
 			$installer::globals::officedirgid = $onedir->{'gid'};
 			$allvariables->{'OFFICEDIRECTORYHOSTNAME'} = $installer::globals::officedirhostname;
 		}
-		if ( $styles =~ /\bSUNDIRECTORY\b/ )
-		{
-			$installer::globals::sundirhostname = $onedir->{'HostName'};
-			$installer::globals::sundirgid = $onedir->{'gid'};
-			$allvariables->{'SUNDIRECTORYHOSTNAME'} = $installer::globals::sundirhostname;
-		}
 	}	
 }
 
@@ -900,8 +884,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::changing_name_of_language_dependent_keys : $#{$itemsarrayref}"); }
-
 	# Changing key for multilingual items from "Name ( )" to "Name" or "HostName ( )" to "HostName"
 
 	for ( my $i = 0; $i <= $#{$itemsarrayref}; $i++ )
@@ -968,8 +950,6 @@
 {
 	my ($itemsarrayref, $languagestringref, $hashref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::replace_setup_variables : $#{$itemsarrayref} : $$languagestringref : $hashref->{'PRODUCTNAME'}"); }
-
 	my $languagesstring = $$languagestringref;
 	$languagesstring =~ s/\_/ /g;	# replacing underscore with whitespace
 	# $languagesstring is "01 49" instead of "en-US de"
@@ -1033,19 +1013,24 @@
 # the standard destination of user directory defined in scp2 ($SYSUSERCONFIG).
 ################################################################################
 
-sub replace_userdir_variable
+sub replace_userdir_variable ($$)
 {
-	my ($itemsarrayref) = @_;
+	my ($itemsarrayref, $allvariableshashref) = @_;
 	
 	my $userdir = "";
-	if ( $allvariableshashref->{'LOCALUSERDIR'} ) { $userdir = $allvariableshashref->{'LOCALUSERDIR'}; }
-	else { $userdir = $installer::globals::simpledefaultuserdir; } 
+	if ($allvariableshashref->{'LOCALUSERDIR'})
+    {
+        $userdir = $allvariableshashref->{'LOCALUSERDIR'};
+    }
+	else
+    {
+        $userdir = $installer::globals::simpledefaultuserdir;
+    }
 	
-	if ( $userdir ne "" )
+	if ($userdir ne "")
 	{
-		for ( my $i = 0; $i <= $#{$itemsarrayref}; $i++ )
+		foreach my $oneitem (@$itemsarrayref)
 		{
-			my $oneitem = ${$itemsarrayref}[$i];		
 			$oneitem->{'Value'} =~ s/\$SYSUSERCONFIG/$userdir/;
 		}
 	}
@@ -1062,8 +1047,6 @@
 {
 	my ($itemsarrayref, $languagestringref, $searchkey, $itemtype) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_non_existent_languages_in_productlists : $#{$itemsarrayref} : $$languagestringref : $searchkey : $itemtype"); }
-
 	# Removing of all non existent files, for instance asian fonts
 
 	installer::logger::include_header_into_logfile("Removing for this language $$languagestringref:");
@@ -1111,8 +1094,6 @@
 {
 	my ($dirsarrayref ,$searchgid, $onelanguage, $oneitemgid) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_Directoryname_From_Directorygid : $#{$dirsarrayref} : $searchgid : $onelanguage"); }
-
 	my $directoryname = "";
 	my $onedirectory;
 	my $foundgid = 0;
@@ -1164,8 +1145,6 @@
 {
 	my ($itemarrayref, $dirsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist : $#{$itemarrayref} : $#{$dirsarrayref}"); }
-
 	for ( my $i = 0; $i <= $#{$itemarrayref}; $i++ )
 	{
 		my $oneitem = ${$itemarrayref}[$i];
@@ -1227,8 +1206,6 @@
 {
 	my ($searchfilenameref, $includepatharrayref, $write_logfile) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_sourcepath_from_filename_and_includepath_classic : $$searchfilenameref : $#{$includepatharrayref} : $write_logfile"); }
-
 	my ($onefile, $includepath, $infoline);
 
 	my $foundsourcefile = 0;
@@ -1285,8 +1262,6 @@
 {
 	my ($searchfilenameref, $unused, $write_logfile) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_sourcepath_from_filename_and_includepath : $$searchfilenameref : $#{$includepatharrayref} : $write_logfile"); }
-
 	my ($onefile, $includepath, $infoline);
 
 	my $foundsourcefile = 0;
@@ -1397,8 +1372,6 @@
 {
 	my ($filesarrayref, $includepatharrayref, $dirsref, $item) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_Source_Directory_For_Files_From_Includepathlist : $#{$filesarrayref} : $#{$includepatharrayref} : $item"); }
-
 	installer::logger::include_header_into_logfile("$item:");
 
 	my $infoline = "";
@@ -1493,8 +1466,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_Files_For_Languagepacks : $#{$filesarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -1529,8 +1500,6 @@
 {
 	my ($filesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_Files_Without_Sourcedirectory : $#{$filesarrayref}"); }
-
 	my $infoline;
 	
 	my $error_occured = 0;
@@ -1641,8 +1610,6 @@
 {
 	my ($filesarrayref, $dirsarrayref, $languagesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::add_License_Files_into_Installdir : $#{$filesarrayref} : $#{$languagesarrayref}"); }
-
 	my $infoline;
 	
 	my @newfilesarray = ();
@@ -1914,8 +1881,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_scpactions_without_name : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -1950,8 +1915,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::change_keys_of_scpactions : $#{$itemsarrayref}"); }
-
 	for ( my $i = 0; $i <= $#{$itemsarrayref}; $i++ )
 	{
 		my $oneitem = ${$itemsarrayref}[$i];
@@ -1995,8 +1958,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_Xpdonly_Items : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -2033,8 +1994,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_Languagepacklibraries_from_Installset : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -2071,8 +2030,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_patchonlyfiles_from_Installset : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -2109,8 +2066,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_tabonlyfiles_from_Installset : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -2147,8 +2102,6 @@
 {
 	my ($itemsarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_installedproductonlyfiles_from_Installset : $#{$itemsarrayref}"); }
-
 	my $infoline;
 	
 	my @newitemsarray = ();
@@ -2184,8 +2137,6 @@
 {
 	my ($filesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::rename_illegal_filenames : $#{$filesarrayref}"); }
-	
 	# This function has to be removed as soon as possible!
 	
 	installer::logger::include_header_into_logfile("Renaming illegal filenames:");
@@ -2249,8 +2200,6 @@
 {
 	my ($filesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::collect_directories_from_filesarray : $#{$filesarrayref}"); }
-
 	my @alldirectories = ();
 	my %alldirectoryhash = ();
 
@@ -2355,12 +2304,10 @@
 # Collecting directories: Part 2
 ##################################
 
-sub collect_directories_with_create_flag_from_directoryarray
+sub collect_directories_with_create_flag_from_directoryarray ($$)
 {
 	my ($directoryarrayref, $alldirectoryhash) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::collect_directories_with_create_flag_from_directoryarray : $#{$directoryarrayref}"); }
-
 	my $alreadyincluded = 0;
 	my @alldirectories = ();
 
@@ -2368,7 +2315,7 @@
 	{
 		my $onedir = ${$directoryarrayref}[$i];
 		my $styles = "";
-		$newdirincluded = 0;
+		my $newdirincluded = 0;
 		
 		if ( $onedir->{'Styles'} ) { $styles = $onedir->{'Styles'}; }
 	
@@ -2473,19 +2420,17 @@
 		push(@alldirectories, $alldirectoryhash->{$destdir});
 	}
 
-	return (\@alldirectories, \%alldirectoryhash);	
+	return (\@alldirectories, $alldirectoryhash);	
 }
 
 #################################################
 # Determining the destination file of a link
 #################################################
 
-sub get_destination_file_path_for_links
+sub get_destination_file_path_for_links ($$)
 {
 	my ($linksarrayref, $filesarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_destination_file_path_for_links : $#{$linksarrayref} : $#{$filesarrayref}"); }
-
 	my $infoline;
 
 	for ( my $i = 0; $i <= $#{$linksarrayref}; $i++ )
@@ -2527,30 +2472,27 @@
 # Determining the destination link of a link
 #################################################
 
-sub get_destination_link_path_for_links
+sub get_destination_link_path_for_links ($)
 {
 	my ($linksarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_destination_link_path_for_links : $#{$linksarrayref}"); }
-
 	my $infoline;
 
-	for ( my $i = 0; $i <= $#{$linksarrayref}; $i++ )
+	foreach my $onelink (@$linksarrayref)
 	{
 		my $shortcutid = "";
-		my $onelink = ${$linksarrayref}[$i];
-		if ( $onelink->{'ShortcutID'} ) { $shortcutid = $onelink->{'ShortcutID'}; }
+		if ($onelink->{'ShortcutID'})
+        {
+            $shortcutid = $onelink->{'ShortcutID'};
+        }
 
-		if (!( $shortcutid eq "" ))
+		if ($shortcutid ne "")
 		{
 			my $foundlink = 0;
 
-			for ( my $j = 0; $j <= $#{$linksarrayref}; $j++ )
+			foreach my $destlink (@$linksarrayref)
 			{
-				my $destlink = ${$linksarrayref}[$j];
-				$shortcutgid = $destlink->{'gid'};
-				
-				if ( $shortcutgid eq $shortcutid )
+				if ($destlink->{'gid'} eq $shortcutid)
 				{
 					$foundlink = 1;
 					$onelink->{'destinationfile'} = $destlink->{'destination'};		# making key 'destinationfile'
@@ -2558,7 +2500,7 @@
 				}				
 			}
 			
-			if (!($foundlink))
+			if ( ! $foundlink)
 			{
                 $installer::logger::Lang->printf("Warning: ShortcutID %s for Link %s not found!\n",
                     $shortcutid,
@@ -2578,8 +2520,6 @@
 {
 	my ($itemarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::remove_workstation_only_items : $#{$itemarrayref}"); }
-	
 	my @newitemarray = ();
 	
 	for ( my $i = 0; $i <= $#{$itemarrayref}; $i++ )
@@ -2608,8 +2548,6 @@
 {
 	my ($linksarrayref) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::resolve_links_with_flag_relative : $#{$linksarrayref}"); }
-
 	# Before this step is:
 	# destination=program/libsalhelperC52.so.3, this will be the name of the link
 	# destinationfile=program/libsalhelperC52.so.3, this will be the linked file or name
@@ -2671,7 +2609,7 @@
 	$hash->{$item} = $gid_list;
 }
 
-sub build_modulegids_table
+sub build_modulegids_table ($$)
 {
 	my ($modulesref, $itemname) = @_;
 
@@ -2679,9 +2617,9 @@
 
 	# build map of item names to list of respective module gids
 	# containing these items
-	for my $onemodule (@{$modulesref})
+	foreach my $onemodule (@{$modulesref})
 	{
-		next if ( ! defined $onemodule->{$itemname} );
+		next if ! defined $onemodule->{$itemname};
 		# these are the items contained in this module
 		# eg. Files = (gid_a_b_c,gid_d_e_f)
 		my $module_gids = $onemodule->{$itemname};
@@ -2704,38 +2642,46 @@
 # This function is a helper of function "assigning_modules_to_items"
 ########################################################################
 
-sub get_string_of_modulegids_for_itemgid
+sub get_string_of_modulegids_for_itemgid ($$)
 {
-	my ($module_lookup_table, $modulesref, $itemgid, $itemname) = @_;
+	my ($module_lookup_table, $itemgid) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::get_string_of_modulegids_for_itemgid : $#{$modulesref} : $itemgid : $itemname"); }
-
-	my $allmodules = "";
 	my $haslanguagemodule = 0;
 	my %foundmodules = ();
 
 	# print STDERR "lookup '" . lc($itemgid) . "'\n";
 	my $gid_list = $module_lookup_table->{lc($itemgid)};
 
-	for my $gid (@{$gid_list})
+	foreach my $gid (@{$gid_list})
 	{
 		$foundmodules{$gid} = 1;
-		$allmodules = $allmodules . "," . $gid;
 		# Is this module a language module? This info should be stored at the file.
-		if ( exists($installer::globals::alllangmodules{$gid}) ) { $haslanguagemodule = 1; }
+		if ( exists($installer::globals::alllangmodules{$gid}) )
+        {
+            $haslanguagemodule = 1;
+        }
  	}
 	
-	$allmodules =~ s/^\s*\,//;	# removing leading comma
+	my $allmodules = join(",", keys %foundmodules);
 
 	# Check: All modules or no module must have flag LANGUAGEMODULE
 	if ( $haslanguagemodule )
 	{
-		my $isreallylanguagemodule = installer::worker::key_in_a_is_also_key_in_b(\%foundmodules, \%installer::globals::alllangmodules);
-		if ( ! $isreallylanguagemodule ) { installer::exiter::exit_program("ERROR: \"$itemgid\" is assigned to modules with flag \"LANGUAGEMODULE\" and also to modules without this flag! Modules: $allmodules", "get_string_of_modulegids_for_itemgid");  }
+		my $isreallylanguagemodule = installer::worker::key_in_a_is_also_key_in_b(
+            \%foundmodules,
+            \%installer::globals::alllangmodules);
+		if ( ! $isreallylanguagemodule )
+        {
+            installer::exiter::exit_program(
+                sprintf(
+                    "ERROR: \"\" is assigned to modules with flag "
+                    . "\"LANGUAGEMODULE\" and also to modules without this flag! Modules: %s",
+                    $itemgid,
+                    $allmodules),
+                "get_string_of_modulegids_for_itemgid");
+        }
 	}
 
-	# print STDERR "get_string_for_itemgid ($itemgid, $itemname) => $allmodules, $haslanguagemodule\n";
-
 	return ($allmodules, $haslanguagemodule);
 }
 
@@ -2748,9 +2694,6 @@
 {
 	my ($modulesref, $itemsref, $itemname) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::assigning_modules_to_items : $#{$modulesref} : $#{$itemsref} : $itemname"); }
-	
-	my $infoline = "";
 	my $languageassignmenterror = 0;
 	my @languageassignmenterrors = ();
 
@@ -2766,34 +2709,48 @@
 		
 		if ( $itemgid eq "" ) 
 		{
-			installer::exiter::exit_program("ERROR in item collection: No gid for item $oneitem->{'Name'}", "assigning_modules_to_items");
+			installer::exiter::exit_program(
+                sprintf("ERROR in item collection: No gid for item %s", $oneitem->{'Name'}),
+                "assigning_modules_to_items");
 		}
 
 		# every item can belong to many modules
 				
-		my ($modulegids, $haslanguagemodule) = get_string_of_modulegids_for_itemgid($module_lookup_table, $modulesref, $itemgid, $itemname);
+		my ($modulegids, $haslanguagemodule) = get_string_of_modulegids_for_itemgid(
+            $module_lookup_table,
+            $itemgid);
 
 		if ($modulegids eq "")
 		{
-			installer::exiter::exit_program("ERROR in file collection: No module found for $itemname $itemgid", "assigning_modules_to_items");
+			installer::exiter::exit_program(
+                sprintf("ERROR in file collection: No module found for %s %s",
+                    $itemname,
+                    $itemgid),
+                "assigning_modules_to_items");
 		}
 
 		$oneitem->{'modules'} = $modulegids;
 		$oneitem->{'haslanguagemodule'} = $haslanguagemodule;
 		
 		# Important check: "ismultilingual" and "haslanguagemodule" must have the same value !
-		if (( $oneitem->{'ismultilingual'} ) && ( ! $oneitem->{'haslanguagemodule'} ))
+		if ($oneitem->{'ismultilingual'} && ! $oneitem->{'haslanguagemodule'})
 		{
-			$infoline = "Error: \"$oneitem->{'gid'}\" is multi lingual, but not in language pack (Assigned module: $modulegids)!\n";
+			my $infoline = sprintf(
+                "Error: \"%s\" is multi lingual, but not in language pack (Assigned module: %s)\n",
+                $oneitem->{'gid'},
+                $modulegids);
             $installer::logger::Global->print($infoline);
-			push( @languageassignmenterrors, $infoline );
+			push(@languageassignmenterrors, $infoline);
 			$languageassignmenterror = 1;
 		}
-		if (( $oneitem->{'haslanguagemodule'} ) && ( ! $oneitem->{'ismultilingual'} ))
+		elsif ($oneitem->{'haslanguagemodule'} && ! $oneitem->{'ismultilingual'})
 		{
-			$infoline = "Error: \"$oneitem->{'gid'}\" is in language pack, but not multi lingual (Assigned module: $modulegids)!\n";
+			my $infoline = sprintf(
+                "Error: \"%s\" is in language pack, but not multi lingual (Assigned module: %s)\n",
+                $oneitem->{'gid'},
+                $modulegids);
             $installer::logger::Global->print($infoline);
-			push( @languageassignmenterrors, $infoline );
+			push(@languageassignmenterrors, $infoline);
 			$languageassignmenterror = 1;
 		}
 	}
@@ -2814,8 +2771,6 @@
 {
 	my ($dirsref, $rootpath) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::add_rootpath_to_directories : $#{$dirsref} : $rootpath"); }
-
 	for ( my $i = 0; $i <= $#{$dirsref}; $i++ )
 	{
 		my $onedir = ${$dirsref}[$i];
@@ -2845,8 +2800,6 @@
 {
 	my ($filesref, $rootpath) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::add_rootpath_to_files : $#{$filesref} : $rootpath"); }
-	
 	for ( my $i = 0; $i <= $#{$filesref}; $i++ )
 	{
 		my $onefile = ${$filesref}[$i];
@@ -2860,8 +2813,6 @@
 {
 	my ($linksref, $rootpath) = @_;
 
-	if ( $installer::globals::debug ) { installer::logger::debuginfo("installer::scriptitems::add_rootpath_to_links : $#{$linksref} : $rootpath"); }
-	
 	for ( my $i = 0; $i <= $#{$linksref}; $i++ )
 	{
 		my $onelink = ${$linksref}[$i];
@@ -3132,4 +3083,27 @@
 	return \@alllinks;
 }
 
+
+
+
+=head2 print_script_item($item)
+
+    For debugging.
+    Print the contents of the given script item to $installer::logger::Lang.
+    
+=cut
+sub print_script_item ($)
+{
+    my ($item) = @_;
+
+    $installer::logger::Lang->printf("script item %s\n", $item->{'uniquename'});
+    foreach my $key (sort keys %$item)
+    {
+        my $value = $item->{$key};
+        $value = "<undef>" unless defined $value;
+        $installer::logger::Lang->printf("    %20s -> %s\n", $key, $value);
+    }
+}
+
+
 1;
diff --git a/main/solenv/bin/modules/installer/setupscript.pm b/main/solenv/bin/modules/installer/setupscript.pm
index 16c318a..0892640 100644
--- a/main/solenv/bin/modules/installer/setupscript.pm
+++ b/main/solenv/bin/modules/installer/setupscript.pm
@@ -31,6 +31,8 @@
 use installer::scriptitems;
 use installer::ziplist;
 
+use strict;
+
 #######################################################
 # Set setup script name, if not defined as parameter
 #######################################################
@@ -74,9 +76,9 @@
 # Reading script variables from installation object of script file
 #####################################################################
 
-sub get_all_scriptvariables_from_installation_object
+sub get_all_scriptvariables_from_installation_object ($$)
 {
-	my ($scriptref) = @_;
+	my ($scriptref, $script_filename) = @_;
 	
 	my @installobjectvariables;
 
@@ -521,13 +523,9 @@
 	my @presetproperties = ();
 	push(@presetproperties, "SOLARISBRANDPACKAGENAME");
 	push(@presetproperties, "SYSTEMINTUNIXPACKAGENAME");
-	# push(@presetproperties, "UNIXPACKAGENAME");
-	# push(@presetproperties, "WITHOUTDOTUNIXPACKAGENAME");
-	# push(@presetproperties, "UNIXPRODUCTNAME");
-	# push(@presetproperties, "WITHOUTDOTUNIXPRODUCTNAME");
 	
 
-	foreach $property ( @presetproperties )
+	foreach my $property (@presetproperties)
 	{
 		my $presetproperty = "PRESET" . $property;
 		if (( exists($allvariables->{$presetproperty}) ) && ( $allvariables->{$presetproperty} ne "" ))
diff --git a/main/solenv/bin/modules/installer/windows/assembly.pm b/main/solenv/bin/modules/installer/windows/assembly.pm
index 0eb68d5..013cc72 100644
--- a/main/solenv/bin/modules/installer/windows/assembly.pm
+++ b/main/solenv/bin/modules/installer/windows/assembly.pm
@@ -28,6 +28,8 @@
 use installer::worker;
 use installer::windows::idtglobal;
 
+use strict;
+
 ##############################################################
 # Returning the first module of a file from the
 # comma separated list of modules.
@@ -224,9 +226,9 @@
 # Returning the name for the table MsiAssemblyName
 ####################################################################################
 
-sub get_msiassemblyname_name
+sub get_msiassemblyname_name ($)
 {
-	( $number ) = @_;
+	my ($number) = @_;
 	
 	my $name = "";
 	
@@ -315,12 +317,9 @@
 	my $componenttablename = $basedir . $installer::globals::separator . "Componen.idt";
 	my $componenttable = installer::files::read_file($componenttablename);
 	my $changed = 0;
-	my $infoline = "";
 
-	for ( my $i = 0; $i <= $#{$installer::globals::msiassemblyfiles}; $i++ )
+	foreach my $onefile (@$installer::globals::msiassemblyfiles)
 	{
-		my $onefile = ${$installer::globals::msiassemblyfiles}[$i];
-		
 		my $filecomponent = get_msiassembly_component($onefile);
 	
 		for ( my $j = 0; $j <= $#{$componenttable}; $j++ )
@@ -342,13 +341,17 @@
 					
 					# $condition = "MsiNetAssemblySupport";
 					$condition = "DOTNET_SUFFICIENT=1";
-					$oneline = $component . "\t" . $componentid . "\t" . $directory . "\t" . $attributes . "\t" . $condition . "\t" . $keypath . "\n";
+					$oneline = join("\t",
+                        $component,
+                        $componentid,
+                        $directory,
+                        $attributes,
+                        $condition,
+                        $keypath) . "\n";
 					${$componenttable}[$j] = $oneline;
 					$changed = 1;
-					$infoline = "Changing $componenttablename :\n"; 
-					$installer::logger::Lang->print($infoline);
-					$infoline = $oneline; 
-					$installer::logger::Lang->print($infoline);
+					$installer::logger::Lang->print("Changing %s :\n", $componenttablename);
+					$installer::logger::Lang->print($oneline);
 					last;			
 				}		
 			}
@@ -359,8 +362,7 @@
 	{
 		# Saving the file
 		installer::files::save_file($componenttablename ,$componenttable);
-		$infoline = "Saved idt file: $componenttablename\n"; 
-		$installer::logger::Lang->print($infoline);
+		$installer::logger::Lang->print("Saved idt file: %s\n", $componenttablename);
 	}
 }
 
diff --git a/main/solenv/bin/modules/installer/windows/component.pm b/main/solenv/bin/modules/installer/windows/component.pm
index ade6d4b..53b31d7 100644
--- a/main/solenv/bin/modules/installer/windows/component.pm
+++ b/main/solenv/bin/modules/installer/windows/component.pm
@@ -39,9 +39,9 @@
 # Sample for a guid: {B68FD953-3CEF-4489-8269-8726848056E8}
 ##############################################################
 
-sub get_component_guid
+sub get_component_guid ($)
 {	
-	my ( $componentname, $componentidhashref ) = @_;
+	my ($componentname) = @_;
 	
 	# At this time only a template
 	my $returnvalue = "\{COMPONENTGUID\}";
@@ -49,6 +49,9 @@
 	# Returning a ComponentID, that is assigned in scp project
 	if ( exists($installer::globals::componentid{$componentname}) )
 	{
+        $installer::logger::Lang->printf("reusing guid %s for component %s\n",
+            $installer::globals::componentid{$componentname},
+            $componentname);
 		$returnvalue = "\{" . $installer::globals::componentid{$componentname} . "\}";
 	}
 	
@@ -59,52 +62,50 @@
 # Returning the directory for a file component.
 ##############################################################
 
-sub get_file_component_directory
+sub get_file_component_directory ($$$)
 {
 	my ($componentname, $filesref, $dirref) = @_; 
 
-	my ($onefile, $component, $onedir, $hostname, $uniquedir);
+	my ($component,  $uniquedir);
 	my $found = 0;
 
-	for ( my $i = 0; $i <= $#{$filesref}; $i++ )
+	foreach my $onefile (@$filesref)
 	{
-		$onefile = 	${$filesref}[$i];
-		$component = $onefile->{'componentname'};
-		
-		if ( $component eq $componentname )
+		if ($onefile->{'componentname'} eq $componentname)
 		{
-			$found = 1;
-			last;
-		}	
-	}
-	
-	if (!($found))
-	{
-		# This component can be ignored, if it exists in a version with extension "_pff" (this was renamed in file::get_sequence_for_file() )
-		my $ignore_this_component = 0;
-		my $origcomponentname = $componentname;
-		my $componentname = $componentname . "_pff";
-		
-		for ( my $j = 0; $j <= $#{$filesref}; $j++ )
-		{
-			$onefile = 	${$filesref}[$j];
-			$component = $onefile->{'componentname'};
-		
-			if ( $component eq $componentname )
-			{
-				$ignore_this_component = 1;
-				last;
-			}	
+            return get_file_component_directory_for_file($onefile, $dirref);
 		}
-		
-		if ( $ignore_this_component ) { return "IGNORE_COMP"; }
-		else { installer::exiter::exit_program("ERROR: Did not find component \"$origcomponentname\" in file collection", "get_file_component_directory"); }
 	}
-
-	my $localstyles = "";
 	
-	if ( $onefile->{'Styles'} ) { $localstyles = $onefile->{'Styles'}; }
 
+    # This component can be ignored, if it exists in a version with
+    # extension "_pff" (this was renamed in file::get_sequence_for_file() )
+    my $ignore_this_component = 0;
+    my $origcomponentname = $componentname;
+    my $componentname_pff = $componentname . "_pff";
+		
+    foreach my $onefile (@$filesref)
+    {
+        if ($onefile->{'componentname'} eq $componentname_pff)
+        {
+            return "IGNORE_COMP";
+        }	
+    }
+		
+    installer::exiter::exit_program(
+        "ERROR: Did not find component \"$origcomponentname\" in file collection",
+        "get_file_component_directory");
+}
+
+
+
+
+sub get_file_component_directory_for_file ($$)
+{
+    my ($onefile, $dirref) = @_;
+
+	my $localstyles = $onefile->{'Styles'} // "";
+	
 	if ( $localstyles =~ /\bFONT\b/ )	# special handling for font files
 	{
 		return $installer::globals::fontsfolder;
@@ -126,7 +127,8 @@
 	$destination =~ s/\Q$installer::globals::separator\E\s*$//;
 	
 	# This path has to be defined in the directory collection at "HostName" 
-	
+
+    my $uniquedir = undef;
 	if ($destination eq "")		# files in the installation root
 	{
 		$uniquedir = "INSTALLLOCATION";
@@ -135,24 +137,23 @@
 	{
 		$found = 0;
 	
-		for ( my $i = 0; $i <= $#{$dirref}; $i++ )
+		foreach my $directory (@$dirref)
 		{
-			$onedir = 	${$dirref}[$i];
-			$hostname = $onedir->{'HostName'};
-		
-			if ( $hostname eq $destination )
+			if ($directory->{'HostName'} eq $destination )
 			{
 				$found = 1;
+                $uniquedir = $directory->{'uniquename'};
 				last;
 			}	
 		}
 
-		if (!($found))
+		if ( ! $found)
 		{
-			installer::exiter::exit_program("ERROR: Did not find destination $destination in directory collection", "get_file_component_directory");
+			installer::exiter::exit_program(
+                "ERROR: Did not find destination $destination in directory collection",
+                "get_file_component_directory");
 		}
 	
-		$uniquedir = $onedir->{'uniquename'};
 		
 		if ( $uniquedir eq $installer::globals::officeinstalldirectory )
 		{
@@ -226,7 +227,8 @@
 		$attributes = 0;	# Assembly files cannot run from source
 	}
 		
-	if (( $onefile->{'Dir'} =~ /\bPREDEFINED_OSSHELLNEWDIR\b/ ) || ( $onefile->{'needs_user_registry_key'} ))
+	if ((defined $onefile->{'Dir'} && $onefile->{'Dir'} =~ /\bPREDEFINED_OSSHELLNEWDIR\b/)
+        || $onefile->{'needs_user_registry_key'})
 	{
 		$attributes = 4;	# Files in shellnew dir and in non advertised startmenu entries must have user registry key as KeyPath
 	}
@@ -320,54 +322,51 @@
 # real filename!
 ####################################################################
 
-sub get_component_keypath
+sub get_component_keypath ($$)
 {
-	my ($componentname, $itemsref, $componentidkeypathhashref) = @_;
+	my ($componentname, $itemsref) = @_;
 
-	my $oneitem;
 	my $found = 0;
 	my $infoline = "";
 
-	for ( my $i = 0; $i <= $#{$itemsref}; $i++ )
+	foreach my $oneitem (@$itemsref)
 	{
-		$oneitem = 	${$itemsref}[$i];
-		my $component = $oneitem->{'componentname'};
-		
+        my $component = $oneitem->{'componentname'};
+
+		if ( ! defined $component)
+        {
+            installer::scriptitems::print_script_item($oneitem);
+            installer::logger::PrintError("item in get_component_keypath has no 'componentname'\n");
+            return "";
+        }
 		if ( $component eq $componentname )
 		{
+            my $keypath = $oneitem->{'uniquename'};	# "uniquename", not "Name" 
+	
+            # Special handling for components in
+            # PREDEFINED_OSSHELLNEWDIR. These components need as
+            # KeyPath a RegistryItem in HKCU
+            if ($oneitem->{'userregkeypath'})
+            {
+                $keypath = $oneitem->{'userregkeypath'};
+            }
+
+            # saving it in the file and registry collection
+            $oneitem->{'keypath'} = $keypath;
+	
+            return $keypath
+		}
+
+		if ($oneitem->{'componentname'} eq $componentname)
+		{
 			$found = 1;
 			last;
 		}
 	}
-	
-	if (!($found))
-	{
-		installer::exiter::exit_program("ERROR: Did not find component in file/registry collection, function get_component_keypath", "get_component_keypath");
-	}
 
-	my $keypath = $oneitem->{'uniquename'};	# "uniquename", not "Name" 
-	
-	# Special handling for updates from existing databases, because KeyPath must not change
-	if (( $installer::globals::updatedatabase ) && ( exists($componentidkeypathhashref->{$componentname}) ))
-	{
-		$keypath = $componentidkeypathhashref->{$componentname};
-		# -> check, if this is a valid key path?!
-		if ( $keypath ne $oneitem->{'uniquename'} )
-		{
-			# Warning: This keypath was changed because of info from old database
-			$infoline = "WARNING: The KeyPath for component \"$componentname\" was changed from \"$oneitem->{'uniquename'}\" to \"$keypath\" because of information from update database";
-			$installer::logger::Lang->print($infoline);
-		}
-	}
-	
-	# Special handling for components in PREDEFINED_OSSHELLNEWDIR. These components
-	# need as KeyPath a RegistryItem in HKCU
-	if ( $oneitem->{'userregkeypath'} ) { $keypath = $oneitem->{'userregkeypath'}; }
-
-	# saving it in the file and registry collection
-	$oneitem->{'keypath'} = $keypath;
-	
-	return $keypath
+    installer::exiter::exit_program(
+        "ERROR: Did not find component in file/registry collection, function get_component_keypath",
+        "get_component_keypath");
 }
 
 ###################################################################
@@ -376,9 +375,16 @@
 # Component ComponentId Directory_ Attributes Condition KeyPath
 ###################################################################
 
-sub	create_component_table
+sub	create_component_table ($$$$$$$)
 {
-	my ($filesref, $registryref, $dirref, $allfilecomponentsref, $allregistrycomponents, $basedir, $componentidhashref, $componentidkeypathhashref, $allvariables) = @_;
+	my ($filesref,
+        $registryref,
+        $dirref,
+        $allfilecomponentsref,
+        $allregistrycomponents,
+        $basedir,
+        $allvariables)
+        = @_;
 
 	my @componenttable = ();
 
@@ -396,12 +402,12 @@
 		my %onecomponent = ();
 		
 		$onecomponent{'name'} = ${$allfilecomponentsref}[$i]; 
-		$onecomponent{'guid'} = get_component_guid($onecomponent{'name'}, $componentidhashref); 
+		$onecomponent{'guid'} = get_component_guid($onecomponent{'name'}); 
 		$onecomponent{'directory'} = get_file_component_directory($onecomponent{'name'}, $filesref, $dirref);
 		if ( $onecomponent{'directory'} eq "IGNORE_COMP" ) { next; }
 		$onecomponent{'attributes'} = get_file_component_attributes($onecomponent{'name'}, $filesref, $allvariables); 
 		$onecomponent{'condition'} = get_file_component_condition($onecomponent{'name'}, $filesref); 
-		$onecomponent{'keypath'} = get_component_keypath($onecomponent{'name'}, $filesref, $componentidkeypathhashref); 
+		$onecomponent{'keypath'} = get_component_keypath($onecomponent{'name'}, $filesref); 
 
 		$oneline = $onecomponent{'name'} . "\t" . $onecomponent{'guid'} . "\t" . $onecomponent{'directory'} . "\t"  
 				. $onecomponent{'attributes'} . "\t" . $onecomponent{'condition'} . "\t" . $onecomponent{'keypath'} . "\n";
@@ -416,11 +422,11 @@
 		my %onecomponent = ();
 		
 		$onecomponent{'name'} = ${$allregistrycomponents}[$i]; 
-		$onecomponent{'guid'} = get_component_guid($onecomponent{'name'}, $componentidhashref); 
+		$onecomponent{'guid'} = get_component_guid($onecomponent{'name'}); 
 		$onecomponent{'directory'} = get_registry_component_directory();
 		$onecomponent{'attributes'} = get_registry_component_attributes($onecomponent{'name'}, $allvariables); 
 		$onecomponent{'condition'} = get_component_condition($onecomponent{'name'}); 
-		$onecomponent{'keypath'} = get_component_keypath($onecomponent{'name'}, $registryref, $componentidkeypathhashref); 
+		$onecomponent{'keypath'} = get_component_keypath($onecomponent{'name'}, $registryref); 
 
 		$oneline = $onecomponent{'name'} . "\t" . $onecomponent{'guid'} . "\t" . $onecomponent{'directory'} . "\t"  
 				. $onecomponent{'attributes'} . "\t" . $onecomponent{'condition'} . "\t" . $onecomponent{'keypath'} . "\n";
diff --git a/main/solenv/bin/modules/installer/windows/directory.pm b/main/solenv/bin/modules/installer/windows/directory.pm
index 76fec6c..8c5d0da 100644
--- a/main/solenv/bin/modules/installer/windows/directory.pm
+++ b/main/solenv/bin/modules/installer/windows/directory.pm
@@ -269,7 +269,6 @@
 			if ( $installer::globals::installlocationdirectoryset ) { installer::exiter::exit_program("ERROR: Directory with flag ISINSTALLLOCATION alread set: \"$installer::globals::installlocationdirectory\".", "create_unique_directorynames"); }
 			$installer::globals::installlocationdirectory = $uniquename;
 			$installer::globals::installlocationdirectoryset = 1;
-			if ( $installer::globals::installlocationdirectory =~ /oracle_/i ) { $installer::globals::sundirexists = 1; }
 		}
 		
 		# setting the sundirectory
@@ -353,9 +352,9 @@
 # Creating the defaultdir for the file Director.idt
 #####################################################
 
-sub create_defaultdir_directorynames
+sub create_defaultdir_directorynames ($)
 {
-	my ($directoryref, $shortdirnamehashref) = @_;
+	my ($directoryref) = @_;
 
 	my @shortnames = ();
 	if ( $installer::globals::prepare_winpatch ) { @shortnames = values(%installer::globals::saved83dirmapping); }
@@ -468,11 +467,6 @@
 			$productkey = $productkey . " " . $allvariableshashref->{'POSTVERSIONEXTENSION'}; 
 			$realproductkey = $realproductkey . " " . $allvariableshashref->{'POSTVERSIONEXTENSION'}; 
 		}
-		if ( $allvariableshashref->{'NOVERSIONINDIRNAME'} ) 
-		{ 
-			$productkey = $productname; 
-			$realproductkey = $realproductname; 
-		}
 		if ( $allvariableshashref->{'NOSPACEINDIRECTORYNAME'} ) 
 		{
 			$productkey =~ s/\ /\_/g; 
@@ -546,9 +540,9 @@
 # Creating the file Director.idt dynamically
 ###############################################
 
-sub create_directory_table
+sub create_directory_table ($$$$)
 {
-	my ($directoryref, $basedir, $allvariableshashref, $shortdirnamehashref, $loggingdir) = @_;
+	my ($directoryref, $basedir, $allvariableshashref, $loggingdir) = @_;
 
 	# Structure of the directory table:
 	# Directory Directory_Parent DefaultDir
@@ -567,7 +561,7 @@
 	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforidt_local_1.log", $directoryref); }
 	create_unique_directorynames($directoryref, $allvariableshashref);
 	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforidt_local_1a.log", $directoryref); }
-	create_defaultdir_directorynames($directoryref, $shortdirnamehashref);	# only destdir!
+	create_defaultdir_directorynames($directoryref);	# only destdir!
 	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforidt_local_2.log", $directoryref); }
 	set_installlocation_directory($directoryref, $allvariableshashref);
 	if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "directoriesforidt_local_3.log", $directoryref); }
diff --git a/main/solenv/bin/modules/installer/windows/file.pm b/main/solenv/bin/modules/installer/windows/file.pm
index 05a39e8..8d87f33 100644
--- a/main/solenv/bin/modules/installer/windows/file.pm
+++ b/main/solenv/bin/modules/installer/windows/file.pm
@@ -360,9 +360,9 @@
 # In most cases this is simply the filename.
 ####################################################################
 
-sub generate_unique_filename_for_filetable
+sub generate_unique_filename_for_filetable ($$)
 {
-	my ($fileref, $component, $uniquefilenamehashref) = @_;
+	my ($fileref, $component) = @_;
 
 	# This new filename has to be saved into $fileref, because this is needed to find the source.
 	# The filename sbasic.idx/OFFSETS is changed to OFFSETS, but OFFSETS is not unique.
@@ -451,9 +451,9 @@
 # The first part has to be 8.3 conform.
 ####################################################################
 
-sub generate_filename_for_filetable
+sub generate_filename_for_filetable ($$)
 {
-	my ($fileref, $shortnamesref, $uniquefilenamehashref) = @_;
+	my ($fileref, $shortnamesref) = @_;
 
 	my $returnstring = "";
 
@@ -659,9 +659,9 @@
 # Creating the file File.idt dynamically
 ############################################
 
-sub create_files_table
+sub create_files_table ($$$$)
 {
-	my ($filesref, $allfilecomponentsref, $basedir, $allvariables, $uniquefilenamehashref) = @_;
+	my ($filesref, $allfilecomponentsref, $basedir, $allvariables) = @_;
 
 	$installer::logger::Lang->add_timestamp("Performance Info: File Table start");
 
@@ -700,7 +700,7 @@
 		if (( $styles =~ /\bJAVAFILE\b/ ) && ( ! ($allvariables->{'JAVAPRODUCT'} ))) { next; }
 
 		$file{'Component_'} = get_file_component_name($onefile, $filesref);
-		$file{'File'} = generate_unique_filename_for_filetable($onefile, $file{'Component_'}, $uniquefilenamehashref);
+		$file{'File'} = generate_unique_filename_for_filetable($onefile, $file{'Component_'});
 	
 		$onefile->{'uniquename'} = $file{'File'};
 		$onefile->{'componentname'} = $file{'Component_'};
@@ -710,7 +710,7 @@
 
 		if ( ! exists($allfilecomponents{$file{'Component_'}}) ) { $allfilecomponents{$file{'Component_'}} = 1; }
 
-		$file{'FileName'} = generate_filename_for_filetable($onefile, \%shortnames, $uniquefilenamehashref);
+		$file{'FileName'} = generate_filename_for_filetable($onefile, \%shortnames);
 
 		$file{'FileSize'} = get_filesize($onefile);
 
diff --git a/main/solenv/bin/modules/installer/windows/msiglobal.pm b/main/solenv/bin/modules/installer/windows/msiglobal.pm
index e542259..d614e23 100644
--- a/main/solenv/bin/modules/installer/windows/msiglobal.pm
+++ b/main/solenv/bin/modules/installer/windows/msiglobal.pm
@@ -1694,9 +1694,9 @@
 # Setting the global variables ProductCode and the UpgradeCode
 ###############################################################
 
-sub set_global_code_variables
+sub set_global_code_variables ($$)
 {
-	my ( $languagesref, $languagestringref, $allvariableshashref, $alloldproperties ) = @_;
+	my ($languagesref, $allvariableshashref) = @_;
 
 	# In the msi template directory a files "codes.txt" has to exist, in which the ProductCode
 	# and the UpgradeCode for the product are defined.
diff --git a/main/solenv/bin/modules/installer/windows/property.pm b/main/solenv/bin/modules/installer/windows/property.pm
index 2f39ee3..fe00172 100644
--- a/main/solenv/bin/modules/installer/windows/property.pm
+++ b/main/solenv/bin/modules/installer/windows/property.pm
@@ -308,12 +308,6 @@
     $onepropertyline = "DONTOPTIMIZELIBS" . "\t" . "0" . "\n";
     push(@{$propertyfile}, $onepropertyline);
 
-	if ( $installer::globals::sundirexists )
-	{
-		my $onepropertyline = "SUNDIREXISTS" . "\t" . "1" . "\n";
-		push(@{$propertyfile}, $onepropertyline);			
-	}
-
 	if ( $installer::globals::officedirhostname )
 	{
 		my $onepropertyline = "OFFICEDIRHOSTNAME" . "\t" . $installer::globals::officedirhostname . "\n";
@@ -325,12 +319,6 @@
 		push(@{$propertyfile}, $onepropertyline);
 	}
 
-	if ( $installer::globals::sundirhostname )
-	{
-		my $onepropertyline = "SUNDIRHOSTNAME" . "\t" . $installer::globals::sundirhostname . "\n";
-		push(@{$propertyfile}, $onepropertyline);		
-	}
-		
 	if ( $installer::globals::desktoplinkexists )
 	{
 		my $onepropertyline = "DESKTOPLINKEXISTS" . "\t" . "1" . "\n";
diff --git a/main/solenv/bin/modules/installer/windows/registry.pm b/main/solenv/bin/modules/installer/windows/registry.pm
index 0ca3b04..f05e51d 100644
--- a/main/solenv/bin/modules/installer/windows/registry.pm
+++ b/main/solenv/bin/modules/installer/windows/registry.pm
@@ -77,17 +77,6 @@
 	my $styles = "";	
 	if ( $registryref->{'Styles'} ) { $styles = $registryref->{'Styles'}; }
 
-	# Layer links must have unique Component GUID for all products. This is necessary, because only the 
-	# uninstallation of the last product has to delete registry keys.
-	if ( $styles =~ /\bLAYER_REGISTRY\b/ )
-	{
-		$componentname = "g_m_root_registry_layer_ooo_reglayer";
-		# Styles USE_URELAYERVERSION, USE_OOOBASEVERSION
-		if ( $styles =~ /\bUSE_URELAYERVERSION\b/ ) { $addon = "_ure_" . $allvariables->{'URELAYERVERSION'}; }
-		if ( $styles =~ /\bUSE_OOOBASEVERSION\b/ ) { $addon = "_basis_" . $allvariables->{'OOOBASEVERSION'}; }
-		$addon =~ s/\.//g;
-	}
-
 	$componentname = $componentname . $addon;
 
 	if (( $styles =~ /\bLANGUAGEPACK\b/ ) && ( $installer::globals::languagepack )) { $componentname = $componentname . "_lang"; }
diff --git a/main/solenv/bin/modules/installer/worker.pm b/main/solenv/bin/modules/installer/worker.pm
index f4edc56..591f563 100644
--- a/main/solenv/bin/modules/installer/worker.pm
+++ b/main/solenv/bin/modules/installer/worker.pm
@@ -733,9 +733,11 @@
 		if ( $oneitem->{'Styles'} ) { $styles = $oneitem->{'Styles'} };
 		if ( $styles =~ /\b$flag\b/ )
 		{
-			my $infoline = "Attention: Removing from collector: $oneitem->{'Name'} !\n";
-			$installer::logger::Lang->print($infoline);
-			if ( $flag eq "BINARYTABLE_ONLY" ) { push(@installer::globals::binarytableonlyfiles, $oneitem); }
+			$installer::logger::Lang->printf("Attention: Removing from collector: %s\n", $oneitem->{'Name'});
+			if ($flag eq "BINARYTABLE_ONLY")
+            {
+                push(@installer::globals::binarytableonlyfiles, $oneitem);
+            }
 			next;
 		}
 		push( @allitems, $oneitem );
@@ -2377,7 +2379,6 @@
 
 		my @sourcefiles = ();
 		my $pathstring = "";
-		# installer::systemactions::read_complete_directory($includepath, $pathstring, \@sourcefiles);
 		installer::systemactions::read_full_directory($includepath, $pathstring, \@sourcefiles);
 
 		if ( ! ( $#sourcefiles > -1 ))
@@ -2711,8 +2712,8 @@
 
 	for ( my $i = 0; $i <= $#{$filesref}; $i++ )
 	{
-		my $line = ${$filesref}[$i]->{'sourcepath'} . "\n";
-		push(@pathcollector, $line);
+		my $filename = ${$filesref}[$i]->{'sourcepath'};
+		push(@pathcollector, $filename  . "\n");
 		$counter++;
 		
 		if (( $i == $#{$filesref} ) || ((( $counter % $max ) == 0 ) && ( $i > 0 )))
@@ -2728,6 +2729,9 @@
 			installer::files::save_file($tmpfilename, \@pathcollector);
 
 			my $success = 0;
+            $installer::logger::Lang->printf(
+                "Converting %d filenames to cygwin notation\n",
+                $counter);
 			my @cyg_sourcepathlist = qx{cygpath -w -f "$tmpfilename"};
 			chomp @cyg_sourcepathlist;
 			
@@ -2737,14 +2741,19 @@
 		
 			if ($success)
 			{
-				$infoline = "Success: Successfully converted to cygwin pathes!\n";
-				$installer::logger::Lang->print($infoline);
+                $installer::logger::Lang->printf(
+                    "Successfully converted %d paths to cygwin notation\n",
+                    $counter);
+                $installer::logger::Lang->printf(
+                    "there where %d unique paths\n",
+                    scalar keys %paths);
 			}
 			else
 			{
-				$infoline = "ERROR: Failed to convert to cygwin pathes!\n";
-				$installer::logger::Lang->print($infoline);
-				installer::exiter::exit_program("ERROR: Failed to convert to cygwin pathes!", "generate_cygwin_pathes");
+                $installer::logger::Lang->print("ERROR: Failed to convert to cygwin pathes!\n");
+                installer::exiter::exit_program(
+                    "ERROR: Failed to convert to cygwin pathes!",
+                    "generate_cygwin_pathes");
 			}
 
 			for ( my $j = 0; $j <= $#cyg_sourcepathlist; $j++ )
diff --git a/main/solenv/bin/modules/installer/ziplist.pm b/main/solenv/bin/modules/installer/ziplist.pm
index 43c7c68..08f14bd 100644
--- a/main/solenv/bin/modules/installer/ziplist.pm
+++ b/main/solenv/bin/modules/installer/ziplist.pm
@@ -30,6 +30,121 @@
 use installer::parameter;
 use installer::remover;
 use installer::systemactions;
+use strict;
+
+=head2 read_openoffice_lst_file (#loggingdir)
+    Read the settings and variables from the settings file (typically 'openoffice.lst').
+=cut
+sub read_openoffice_lst_file ($$;$)
+{
+    my ($filename, $product_name, $loggingdir) = @_;
+
+    # Read all lines from the settings file.
+    my $ziplistref = installer::files::read_file($filename);
+
+    # Extract the lines of the settings block for the current product.
+    my ($productblockref, $parent) = installer::ziplist::getproductblock(
+        $ziplistref, $product_name, 1);
+    my ($settingsblockref, undef) = installer::ziplist::getproductblock($productblockref, "Settings", 0);
+    $settingsblockref = installer::ziplist::analyze_settings_block($settingsblockref);
+
+    # Split into settings and variables.
+    my $allsettingsarrayref = installer::ziplist::get_settings_from_ziplist($settingsblockref);
+    my $allvariablesarrayref = installer::ziplist::get_variables_from_ziplist($settingsblockref);
+    
+    # global product block from zip.lst
+    my ($globalproductblockref, undef) = installer::ziplist::getproductblock(
+        $ziplistref, $installer::globals::globalblock, 0);
+
+    if ($installer::globals::globallogging && defined $loggingdir)
+    {
+        installer::files::save_file($loggingdir . "productblock.log", $productblockref);
+        installer::files::save_file($loggingdir . "settingsblock.log", $settingsblockref);
+        installer::files::save_file($loggingdir . "allsettings1.log", $allsettingsarrayref);
+        installer::files::save_file($loggingdir . "allvariables1.log", $allvariablesarrayref);
+        installer::files::save_file($loggingdir . "globalproductblock.log", $globalproductblockref);
+    }
+
+    # Integrate parent values.
+    while (defined $parent)
+    {
+        my $parentproductblockref;
+        ($parentproductblockref, $parent) = installer::ziplist::getproductblock($ziplistref, $parent, 1);
+        my ($parentsettingsblockref, undef) = installer::ziplist::getproductblock(
+            $parentproductblockref, "Settings", 0);
+        $parentsettingsblockref = installer::ziplist::analyze_settings_block($parentsettingsblockref);
+        my $allparentsettingsarrayref =	installer::ziplist::get_settings_from_ziplist($parentsettingsblockref);
+        my $allparentvariablesarrayref = installer::ziplist::get_variables_from_ziplist($parentsettingsblockref);
+		if (scalar @$allparentsettingsarrayref > 0)
+        {
+            $allsettingsarrayref = installer::converter::combine_arrays_from_references_first_win(
+                $allsettingsarrayref,
+                $allparentsettingsarrayref)
+        }
+		if (scalar @$allparentvariablesarrayref)
+        {
+            $allvariablesarrayref = installer::converter::combine_arrays_from_references_first_win(
+                $allvariablesarrayref,
+                $allparentvariablesarrayref)
+        }
+    }
+
+    # Integrate global values.
+    if (scalar @$globalproductblockref)
+    {
+        # settings block from zip.lst
+        my ($globalsettingsblockref, undef) = installer::ziplist::getproductblock(
+            $globalproductblockref, "Settings", 0);
+
+        # select data from settings block in zip.lst
+        $globalsettingsblockref = installer::ziplist::analyze_settings_block($globalsettingsblockref);
+
+        my $allglobalsettingsarrayref = installer::ziplist::get_settings_from_ziplist($globalsettingsblockref);
+        my $allglobalvariablesarrayref = installer::ziplist::get_variables_from_ziplist($globalsettingsblockref);
+
+        if ($installer::globals::globallogging && defined $loggingdir)
+        {
+            installer::files::save_file($loggingdir . "globalsettingsblock1.log", $globalsettingsblockref);
+            installer::files::save_file($loggingdir . "globalsettingsblock2.log", $globalsettingsblockref);
+            installer::files::save_file($loggingdir . "allglobalsettings1.log", $allglobalsettingsarrayref);
+            installer::files::save_file($loggingdir . "allglobalvariables1.log", $allglobalvariablesarrayref);
+        }
+        
+        if (scalar @$allglobalsettingsarrayref > 0)
+        {
+            $allsettingsarrayref = installer::converter::combine_arrays_from_references_first_win(
+                $allsettingsarrayref, $allglobalsettingsarrayref);
+        }
+        if (scalar @$allglobalvariablesarrayref > 0)
+        {
+            $allvariablesarrayref = installer::converter::combine_arrays_from_references_first_win(
+                $allvariablesarrayref, $allglobalvariablesarrayref);
+        }
+    }
+
+    # Remove multiples (and the trailing ##%##).
+    $allsettingsarrayref = installer::ziplist::remove_multiples_from_ziplist($allsettingsarrayref);
+    $allvariablesarrayref = installer::ziplist::remove_multiples_from_ziplist($allvariablesarrayref);
+    installer::ziplist::replace_variables_in_ziplist_variables($allvariablesarrayref);
+
+    # Transform array into hash.
+    my $allvariableshashref = installer::converter::convert_array_to_hash($allvariablesarrayref);
+
+    # Postprocess the variables.
+    installer::ziplist::set_default_productversion_if_required($allvariableshashref);
+    installer::ziplist::add_variables_to_allvariableshashref($allvariableshashref);
+    installer::ziplist::overwrite_ooovendor($allvariableshashref);
+    
+    if ($installer::globals::globallogging && defined $loggingdir)
+    {
+        installer::files::save_file($loggingdir . "allsettings2.log" ,$allsettingsarrayref);
+        installer::files::save_file($loggingdir . "allvariables2.log" ,$allvariablesarrayref);
+    }
+
+    # Eventually we should fix this so that we don't have to return the raw arrays, only the resulting hashes.
+    return ($allvariableshashref, $allsettingsarrayref);
+}
+
 
 #################################################
 # Getting data from path file and zip list file
@@ -571,7 +686,7 @@
 				my $language = ${$languagesref}[$j];
 				$line =~ s/\$\(LANG\)/$language/g;
 				push(@patharray ,$line);
-				$newdir = $line;
+				my $newdir = $line;
 				$line = $originalline;
 				
 				installer::remover::remove_leading_and_ending_whitespaces(\$newline);
@@ -627,8 +742,6 @@
 	}
 
     $installer::logger::Lang->print("\n");
-	
-	return \@filesarray;
 }
 
 #####################################################
@@ -780,9 +893,18 @@
 		$variableshashref->{'LCPRODUCTEXTENSION'} = "";		
 	}
 
-	if ( $installer::globals::patch ) { $variableshashref->{'PRODUCTADDON'} = $installer::globals::patchaddon; }
-	elsif ( $installer::globals::languagepack ) { $variableshashref->{'PRODUCTADDON'} = $installer::globals::languagepackaddon; }
-	else { $variableshashref->{'PRODUCTADDON'} = ""; }
+	if ($installer::globals::patch)
+    {
+        $variableshashref->{'PRODUCTADDON'} = $installer::globals::patchaddon;
+    }
+	elsif ($installer::globals::languagepack)
+    {
+        $variableshashref->{'PRODUCTADDON'} = $installer::globals::languagepackaddon;
+    }
+	else
+    {
+        $variableshashref->{'PRODUCTADDON'} = "";
+    }
 
 	my $localbuild = $installer::globals::build;
 	if ( $localbuild =~ /^\s*(\w+?)(\d+)\s*$/ ) { $localbuild = $2; }	# using "680" instead of "src680"
diff --git a/main/stlport/systemstl/hash_map b/main/stlport/systemstl/hash_map
index 72b2700..a14bb68 100644
--- a/main/stlport/systemstl/hash_map
+++ b/main/stlport/systemstl/hash_map
@@ -69,7 +69,6 @@
 	hash_map& operator=( const hash_map& r) { hash_map c(r); this->swap(c); return *this; }
 #endif
 
-	void resize( size_t n) { _super::rehash(n); }
 private:
 	// setting the hasher dynamically is not supported in the emulation!
 	hash_map( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
@@ -98,7 +97,6 @@
 	hash_multimap& operator=( const hash_multimap& r) { hash_multimap c(r); this->swap(c); return *this; }
 #endif
 
-	void resize( size_t n) { _super::rehash(n); }
 private:
 	// setting the hasher dynamically is not supported in the emulation!
 	hash_multimap( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
diff --git a/main/stlport/systemstl/hash_set b/main/stlport/systemstl/hash_set
index 7cbf797..c97ee05 100644
--- a/main/stlport/systemstl/hash_set
+++ b/main/stlport/systemstl/hash_set
@@ -58,7 +58,6 @@
 public:
 	hash_set( void) {}
 	hash_set( size_t n) : _super(n) {}
-	void resize( size_t n) { _super::rehash( n); }
 
 #ifdef BOOST_TR1_UNORDERED_SET_INCLUDED // workaround pre-BOOST_UNORDERED_USE_MOVE problem 
 	// in derived classes the copy assignment operator can only be declared implicitly if
@@ -84,7 +83,6 @@
 public:
 	hash_multiset( void) {}
 	hash_multiset( size_t n) : _super( n) {}
-	void resize( size_t n) { _super::rehash( n); }
 
 #ifdef BOOST_TR1_UNORDERED_SET_INCLUDED // workaround pre-BOOST_UNORDERED_USE_MOVE problem 
 	// in derived classes the copy assignment operator can only be declared implicitly if
diff --git a/main/svl/inc/svl/smplhint.hxx b/main/svl/inc/svl/smplhint.hxx
index e06729b..1d3ade1 100644
--- a/main/svl/inc/svl/smplhint.hxx
+++ b/main/svl/inc/svl/smplhint.hxx
@@ -64,11 +64,11 @@
 class SVL_DLLPUBLIC SfxSimpleHint: public SfxHint
 {
 private:
-	sal_uLong nId;
+	sal_uLong mnId;
 public:
 	TYPEINFO();
-	SfxSimpleHint( sal_uLong nId );
-	sal_uLong GetId() const { return nId; }
+	SfxSimpleHint( sal_uLong nId ) { mnId = nId; }
+	sal_uLong GetId() const { return mnId; }
 };
 
 //--------------------------------------------------------------------
diff --git a/main/svl/source/items/whassert.hxx b/main/svl/source/items/whassert.hxx
index 344794b..92118e7 100644
--- a/main/svl/source/items/whassert.hxx
+++ b/main/svl/source/items/whassert.hxx
@@ -38,7 +38,7 @@
 			ByteString aMsg( sMessage );									\
 			aMsg.Append(RTL_CONSTASCII_STRINGPARAM("\nwith Id/Pos: "));     \
 			aMsg += ByteString::CreateFromInt32( nId );						\
-			DbgError( aMsg.GetBuffer(), __FILE__, __LINE__);	\
+			DbgError( aMsg.GetBuffer() );	\
 		}																	\
 	}																		\
 }
diff --git a/main/svl/source/notify/smplhint.cxx b/main/svl/source/notify/smplhint.cxx
index 54139f6..2f504d8 100644
--- a/main/svl/source/notify/smplhint.cxx
+++ b/main/svl/source/notify/smplhint.cxx
@@ -32,12 +32,3 @@
 
 TYPEINIT1(SfxSimpleHint, SfxHint);
 
-//====================================================================
-// creates a SimpleHint with the type nId
-
-SfxSimpleHint::SfxSimpleHint( sal_uLong nIdP )
-{
-	nId = nIdP;
-}
-
-
diff --git a/main/svtools/inc/svtools/accessibleruler.hxx b/main/svtools/inc/svtools/accessibleruler.hxx
index a84b325..c22a992 100644
--- a/main/svtools/inc/svtools/accessibleruler.hxx
+++ b/main/svtools/inc/svtools/accessibleruler.hxx
@@ -19,7 +19,6 @@
  * 
  *************************************************************/
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _SVTRULERACCESSIBLE_HXX
 #define _SVTRULERACCESSIBLE_HXX
 
@@ -299,5 +298,4 @@
 
 
 #endif
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/svtools/inc/svtools/headbar.hxx b/main/svtools/inc/svtools/headbar.hxx
index 13f5952..b0cc5dd 100644
--- a/main/svtools/inc/svtools/headbar.hxx
+++ b/main/svtools/inc/svtools/headbar.hxx
@@ -233,8 +233,7 @@
 // - HeaderBar -
 // -------------
 
-class VCLXHeaderBar; // IAccessibility2 Implementation 2009
-
+class VCLXHeaderBar;
 class SVT_DLLPUBLIC HeaderBar : public Window
 {
 private:
@@ -263,8 +262,7 @@
 	Link				maDoubleClickHdl;
 	Link				maCreateAccessibleHdl;
 	
-	VCLXHeaderBar*		m_pVCLXHeaderBar; // IAccessibility2 Implementation 2009
-	
+	VCLXHeaderBar*		m_pVCLXHeaderBar;	
 
 	::com::sun::star::uno::Reference<
 		::com::sun::star::accessibility::XAccessible >
@@ -390,7 +388,6 @@
     virtual ::com::sun::star::uno::Reference<
 		::com::sun::star::accessibility::XAccessible >	CreateAccessible();
 	void SetAccessible( ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > );
-	// IAccessibility2 Implementation 2009
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > GetComponentInterface( sal_Bool bCreate );
 	
 };
diff --git a/main/svtools/inc/svtools/ruler.hxx b/main/svtools/inc/svtools/ruler.hxx
index 6befa2f..2ed1bcf 100644
--- a/main/svtools/inc/svtools/ruler.hxx
+++ b/main/svtools/inc/svtools/ruler.hxx
@@ -32,9 +32,7 @@
 #endif
 #include <vcl/field.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <svtools/accessibleruler.hxx>
-//-----IAccessibility2 Implementation 2009
 
 class MouseEvent;
 class TrackingEvent;
@@ -710,9 +708,7 @@
     Link                maDoubleClickHdl;
     Link                maExtraDownHdl;
 
-//IAccessibility2 Implementation 2009-----
 	SvtRulerAccessible* pAccContext;
-//-----IAccessibility2 Implementation 2009
 
 #ifdef _SV_RULER_CXX
     SVT_DLLPRIVATE void                ImplVDrawLine( long nX1, long nY1, long nX2, long nY2 );
@@ -874,9 +870,7 @@
     //set text direction right-to-left
     void                SetTextRTL(sal_Bool bRTL);
 
-//IAccessibility2 Implementation 2009-----
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible();
-//-----IAccessibility2 Implementation 2009
 };
 
 #endif  // _RULER_HXX
diff --git a/main/svtools/inc/svtools/svlbitm.hxx b/main/svtools/inc/svtools/svlbitm.hxx
index 62af086..851e2fd 100644
--- a/main/svtools/inc/svtools/svlbitm.hxx
+++ b/main/svtools/inc/svtools/svlbitm.hxx
@@ -42,9 +42,7 @@
 #define SV_ITEM_ID_LBOXBMP			2
 #define SV_ITEM_ID_LBOXBUTTON		3
 #define SV_ITEM_ID_LBOXCONTEXTBMP	4
-//IAccessibility2 Implementation 2009-----
 #define SV_ITEM_ID_EXTENDRLBOXSTRING	5
-//-----IAccessibility2 Implementation 2009
 
 enum SvButtonState { SV_BUTTON_UNCHECKED, SV_BUTTON_CHECKED, SV_BUTTON_TRISTATE };
 
@@ -133,9 +131,7 @@
 	virtual sal_uInt16	IsA();
 	void			InitViewData( SvLBox*,SvLBoxEntry*,SvViewDataItem* );
 	XubString		GetText() const { return aStr; }
-	//IAccessibility2 Implementation 2009-----
 	virtual XubString		GetExtendText() const {return XubString();}
-	//-----IAccessibility2 Implementation 2009
 	void 			SetText( SvLBoxEntry*, const XubString& rStr );
 	void			Paint( const Point&, SvLBox& rDev, sal_uInt16 nFlags,SvLBoxEntry* );
 	SvLBoxItem* 	Create() const;
@@ -216,7 +212,6 @@
     // Check whether this button can be modified via UI, sounding a beep if it
     // cannot be modified:
     bool            CheckModification() const;
-	//IAccessible2 implementation 2009
 	SvLBoxButtonData* GetButtonData() const{ return pData;}
 };
 
diff --git a/main/svtools/inc/svtools/svlbox.hxx b/main/svtools/inc/svtools/svlbox.hxx
index a0f989c..48043d1 100644
--- a/main/svtools/inc/svtools/svlbox.hxx
+++ b/main/svtools/inc/svtools/svlbox.hxx
@@ -189,7 +189,6 @@
 	friend class SvLBox;
 
 	SvPtrarr 	aItems;
-    // IAccessible2 implementation in 2009
     sal_Bool      bIsMarked;
 	void*	 	pUserData;
 	sal_uInt16	 	nEntryFlags;
@@ -219,7 +218,6 @@
 
 	sal_uInt16		GetFlags() const { return nEntryFlags; }
 	void		SetFlags( sal_uInt16 nFlags ) { nEntryFlags = nFlags; }
-    // IAccessible2 implementation in 2009
     sal_Bool		GetIsMarked() const { return bIsMarked ; }
 	void		       SetMarked( sal_Bool IsMarked ) { bIsMarked =IsMarked ; }
 };
diff --git a/main/svtools/inc/svtools/svtools.hrc b/main/svtools/inc/svtools/svtools.hrc
index d27452a..d5855d0 100644
--- a/main/svtools/inc/svtools/svtools.hrc
+++ b/main/svtools/inc/svtools/svtools.hrc
@@ -385,7 +385,6 @@
 #define RID_IMG_PRNDLG_COLLATE_HC           (STR_SVT_PRNDLG_START + 31)
 #define RID_IMG_PRNDLG_NOCOLLATE_HC         (STR_SVT_PRNDLG_START + 32)
 
-// IAccessible2 implementation in 2009
 #define STR_PARAGRAPH_START					(STR_SVT_PRNDLG_START + 50)
 #define STR_PARAGRAPH						(STR_PARAGRAPH_START + 0)
 #define STR_PARAGRAPH_END					(STR_PARAGRAPH)
diff --git a/main/svtools/inc/svtools/svtreebx.hxx b/main/svtools/inc/svtools/svtreebx.hxx
index 45beac5..bf07728 100644
--- a/main/svtools/inc/svtools/svtreebx.hxx
+++ b/main/svtools/inc/svtools/svtreebx.hxx
@@ -407,7 +407,6 @@
 	/** Enables, that one cell of a tablistbox entry can be focused */
 	void				EnableCellFocus();
 
-// IAccessible2 implementation in 2009-----------
 						// For overwriting accessible role for all entries - normally 0, so each entry can be different
 	void				SetAllEntriesAccessibleRoleType( short n ) { nAllItemAccRoleType = n; }
 	short				GetAllEntriesAccessibleRoleType() const { return nAllItemAccRoleType; }
@@ -418,7 +417,6 @@
 	String				SearchEntryTextWithHeadTitle( SvLBoxEntry* pEntry ) ;
 	virtual	String		GetEntryAltText( SvLBoxEntry* pEntry) const;
 	virtual	String		GetEntryLongDescription( SvLBoxEntry* pEntry) const;	
-// -----------IAccessible2 implementation in 2009
 
 protected:
     using SvListView::Expand;
diff --git a/main/svtools/inc/svtools/texteng.hxx b/main/svtools/inc/svtools/texteng.hxx
index 989e081..66fd4b4 100644
--- a/main/svtools/inc/svtools/texteng.hxx
+++ b/main/svtools/inc/svtools/texteng.hxx
@@ -324,7 +324,6 @@
 	static sal_Bool			DoesKeyChangeText( const KeyEvent& rKeyEvent );
 	static sal_Bool			DoesKeyMoveCursor( const KeyEvent& rKeyEvent );
 	static sal_Bool			IsSimpleCharInput( const KeyEvent& rKeyEvent );
-// IAccessible2 implementation in 2009
 	Color 				GetTextColor() {return maTextColor; };
 };
 
diff --git a/main/svtools/source/brwbox/brwbox3.cxx b/main/svtools/source/brwbox/brwbox3.cxx
index 4dfa84f..0fdbdfe 100644
--- a/main/svtools/source/brwbox/brwbox3.cxx
+++ b/main/svtools/source/brwbox/brwbox3.cxx
@@ -215,9 +215,7 @@
 
 // Object data and state ------------------------------------------------------
 
-//IAccessibility2 Implementation 2009-----
 OUString BrowseBox::GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition) const
-//-----IAccessibility2 Implementation 2009
 {
     OUString aRetText;
     switch( eObjType )
@@ -235,7 +233,6 @@
 			aRetText = OUString( RTL_CONSTASCII_USTRINGPARAM( "ColumnHeaderBar" ) );
 			break;
         case ::svt::BBTYPE_TABLECELL:
-//IAccessibility2 Implementation 2009-----
 			if( ColCount() !=0 && GetRowCount()!=0)
 			{
            
@@ -245,7 +242,6 @@
 				aRetText += OUString::valueOf(rowId); 
 			}
 			else
-//-----IAccessibility2 Implementation 2009
 				aRetText = OUString( RTL_CONSTASCII_USTRINGPARAM( "TableCell" ) );
 #if OSL_DEBUG_LEVEL > 1
             aRetText += OUString( RTL_CONSTASCII_USTRINGPARAM( " [" ) );
@@ -260,7 +256,6 @@
 			sal_Int32 rowId = _nPosition + 1;
 			aRetText = OUString::valueOf( rowId );
 			}
-			//aRetText = OUString( RTL_CONSTASCII_USTRINGPARAM( "RowHeaderCell" ) );
 #if OSL_DEBUG_LEVEL > 1
             aRetText += OUString( RTL_CONSTASCII_USTRINGPARAM( " [" ) );
 			aRetText += OUString::valueOf(sal_Int32(GetCurRow()));
@@ -270,7 +265,6 @@
 #endif
 			break;
         case ::svt::BBTYPE_COLUMNHEADERCELL:
-			//aRetText = OUString( RTL_CONSTASCII_USTRINGPARAM( "ColumnHeaderCell" ) );
 			aRetText = OUString( GetColumnDescription( sal_Int16( _nPosition ) ) );
 #if OSL_DEBUG_LEVEL > 1
             aRetText += OUString( RTL_CONSTASCII_USTRINGPARAM( " [" ) );
diff --git a/main/svtools/source/brwbox/editbrowsebox.cxx b/main/svtools/source/brwbox/editbrowsebox.cxx
index 1fa2382..a5191ea5 100644
--- a/main/svtools/source/brwbox/editbrowsebox.cxx
+++ b/main/svtools/source/brwbox/editbrowsebox.cxx
@@ -1072,10 +1072,7 @@
                 {
 					commitTableEvent(
                         ACTIVE_DESCENDANT_CHANGED,
-//IAccessibility2 Implementation 2009-----
-						//makeAny( CreateAccessibleCell( nRow, GetColumnPos( nCol ) ) ),
 						makeAny( CreateAccessibleCell( nRow, GetColumnPos( nCol -1) ) ),
-//-----IAccessibility2 Implementation 2009
 						Any()
 					);
                 }
diff --git a/main/svtools/source/contnr/imivctl1.cxx b/main/svtools/source/contnr/imivctl1.cxx
index e08a109..c689c89 100644
--- a/main/svtools/source/contnr/imivctl1.cxx
+++ b/main/svtools/source/contnr/imivctl1.cxx
@@ -1180,9 +1180,7 @@
 		{
 			SelectEntry( pCursor, sal_True, sal_True,  sal_False, bPaintSync );
 			aCurSelectionRect = GetEntryBoundRect( pCursor );
-			//IAccessibility2 Implementation 2009-----
 			CallEventListeners( VCLEVENT_LISTBOX_SELECT, pCursor );
-			//-----IAccessibility2 Implementation 2009
 		}
 	}
 }
diff --git a/main/svtools/source/contnr/svimpbox.cxx b/main/svtools/source/contnr/svimpbox.cxx
index f9277ee..c271a1f 100644
--- a/main/svtools/source/contnr/svimpbox.cxx
+++ b/main/svtools/source/contnr/svimpbox.cxx
@@ -300,9 +300,7 @@
 	// #97680# ---------
 	aContextBmpWidthVector.clear();
 
-//IAccessibility2 Implementation 2009-----
 	CallEventListeners( VCLEVENT_LISTBOX_ITEMREMOVED, NULL );
-//-----IAccessibility2 Implementation 2009
 }
 
 // *********************************************************************
@@ -650,9 +648,7 @@
 		if(!bForceNoSelect && bSimpleTravel && !(nFlags & F_DESEL_ALL) && GetUpdateMode())
 		{
 			pView->Select( pCursor, sal_True );
-			//IAccessibility2 Implementation 2009-----
 			CallEventListeners( VCLEVENT_LISTBOX_TREEFOCUS, pCursor );
-			//-----IAccessibility2 Implementation 2009
 		}
 		// Mehrfachselektion: Im Cursor-Move selektieren, wenn
 		// nicht im Add-Mode (Ctrl-F8)
@@ -662,19 +658,15 @@
 				 !bForceNoSelect )
 		{
 			pView->Select( pCursor, sal_True );
-			//IAccessibility2 Implementation 2009-----
 			CallEventListeners( VCLEVENT_LISTBOX_TREEFOCUS, pCursor );
-			//-----IAccessibility2 Implementation 2009
 		}
 		else
 		{
 			ShowCursor( sal_True );
-			//IAccessibility2 Implementation 2009-----
 			if (bForceNoSelect && GetUpdateMode())
 			{
 				CallEventListeners( VCLEVENT_LISTBOX_TREEFOCUS, pCursor);
 			}
-			//-----IAccessibility2 Implementation 2009
 		}
 
 		if( pAnchor )
@@ -1716,9 +1708,7 @@
 
 void SvImpLBox::RemovingEntry( SvLBoxEntry* pEntry )
 {
-	//IAccessibility2 Implementation 2009-----
 	CallEventListeners( VCLEVENT_LISTBOX_ITEMREMOVED , pEntry );
-	//-----IAccessibility2 Implementation 2009
 
 	DestroyAnchor();
 
@@ -2379,10 +2369,8 @@
 
 		case KEY_LEFT:
 		{
-            //IAccessibility2 Implementation 2009-----
             // if ( bIsCellFocusEnabled )
             if ( bIsCellFocusEnabled && pCursor )
-			//-----IAccessibility2 Implementation 2009
             {
                 if ( nCurTabPos > FIRST_ENTRY_TAB )
                 {
diff --git a/main/svtools/source/contnr/svtabbx.cxx b/main/svtools/source/contnr/svtabbx.cxx
index 1ce5380..e9ba842 100644
--- a/main/svtools/source/contnr/svtabbx.cxx
+++ b/main/svtools/source/contnr/svtabbx.cxx
@@ -1182,10 +1182,8 @@
 			sal_uInt16 nCurColumn = GetCurrColumn();
 			if ( IsCellVisible( nCurRow, nCurColumn ) )
 				_rStateSet.AddState( AccessibleStateType::VISIBLE );
-			//IAccessibility2 Implementation 2009-----
 			if ( IsEnabled() )
 				_rStateSet.AddState( AccessibleStateType::ENABLED );
-			//-----IAccessibility2 Implementation 2009
 			_rStateSet.AddState( AccessibleStateType::TRANSIENT );
 			break;
 		}
@@ -1196,10 +1194,8 @@
 			_rStateSet.AddState( AccessibleStateType::VISIBLE );
 			_rStateSet.AddState( AccessibleStateType::FOCUSABLE );
 			_rStateSet.AddState( AccessibleStateType::TRANSIENT );
-			//IAccessibility2 Implementation 2009-----
 			if ( IsEnabled() )
 				_rStateSet.AddState( AccessibleStateType::ENABLED );
-			//-----IAccessibility2 Implementation 2009
 			break;
 		}
         default:
@@ -1224,7 +1220,6 @@
 		_rStateSet.AddState( AccessibleStateType::ACTIVE );
 		_rStateSet.AddState( AccessibleStateType::SELECTED );
 	}
-	//IAccessibility2 Implementation 2009-----
 	if ( IsEnabled() )
 		_rStateSet.AddState( AccessibleStateType::ENABLED );
 }
diff --git a/main/svtools/source/contnr/svtreebx.cxx b/main/svtools/source/contnr/svtreebx.cxx
index bbad7db..871f8c5 100644
--- a/main/svtools/source/contnr/svtreebx.cxx
+++ b/main/svtools/source/contnr/svtreebx.cxx
@@ -346,7 +346,6 @@
 	return pItem->GetText();
 }
 
-//IAccessibility2 Implementation 2009-----
 String  SvTreeListBox::GetEntryAltText( SvLBoxEntry* ) const
 {
 	String tmp;
@@ -428,7 +427,6 @@
 		sRet = sRet.Erase(sRet.Len() - 1);
 	return sRet;
 }
-//-----IAccessibility2 Implementation 2009
 String SvTreeListBox::SearchEntryText( SvLBoxEntry* pEntry ) const
 {
 	DBG_CHKTHIS(SvTreeListBox,0);
@@ -890,18 +888,15 @@
 void SvTreeListBox::GetFocus()
 {
 	DBG_CHKTHIS(SvTreeListBox,0);
-	//IAccessibility2 Implementation 2009-----
 	//Solution:If there is no item in the tree,draw focus.
 	if( !SvLBox::First())
 	{
 		Invalidate();
 	}
-	//-----IAccessibility2 Implementation 2009
 	pImp->GetFocus();
 	SvLBox::GetFocus();
 
 	SvLBoxEntry* pEntry = FirstSelected();
-	//IAccessibility2 Implementation 2009-----
 	if ( !pEntry )
 	{
 		pEntry = pImp->GetCurrentEntry();
@@ -911,24 +906,19 @@
 		if (pEntry != pImp->pCursor)
 			pEntry = pImp->pCursor;
 	}
-	//IAccessibility2 Implementation 2009-----
 	if ( pEntry )
-		//pImp->CallEventListeners( VCLEVENT_LISTBOX_SELECT, pEntry );
 		pImp->CallEventListeners( VCLEVENT_LISTBOX_TREEFOCUS, pEntry );
-	//-----IAccessibility2 Implementation 2009
 
 }
 
 void SvTreeListBox::LoseFocus()
 {
 	DBG_CHKTHIS(SvTreeListBox,0);
-	//IAccessibility2 Implementation 2009-----
 	//Solution:If there is no item in the tree,delete visual focus.
 	if( !SvLBox::First())
 	{
 		Invalidate();
 	}
-	//-----IAccessibility2 Implementation 2009
 	pImp->LoseFocus();
 	SvLBox::LoseFocus();
 }
@@ -1175,7 +1165,6 @@
 		if( bSelect )
 		{
 			SelectHdl();
-			// IA2 CWS
 			// pImp->CallEventListeners( VCLEVENT_LISTBOX_SELECT, pEntry );
 			CallEventListeners( VCLEVENT_LISTBOX_TREESELECT, pEntry);			
 		}
@@ -1298,7 +1287,6 @@
 	if( nTreeFlags & TREEFLAG_RECALCTABS )
 		SetTabs();
 	pImp->Paint( rRect );
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add visual focus draw
 	if( !SvLBox::First() )
 	{
@@ -1315,7 +1303,6 @@
 			HideFocus();
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 void SvTreeListBox::MouseButtonDown( const MouseEvent& rMEvt )
@@ -2775,14 +2762,6 @@
 		rStateSet.AddState( AccessibleStateType::EXPANDABLE );
 		if ( IsExpanded( pEntry ) )
 		    rStateSet.AddState( (sal_Int16)AccessibleStateType::EXPANDED );
-		// IA2 CWS
-		/*
-		else
-		{
-			// MT: COLLAPSE == EXPANDABLE & !EXPANDED
-			rStateSet.AddState( (sal_Int16)AccessibleStateType::COLLAPSE );
-		}
-		*/
 	}
 
 	if ( GetCheckButtonState( pEntry ) == SV_BUTTON_CHECKED )
@@ -2791,7 +2770,6 @@
 		rStateSet.AddState( AccessibleStateType::VISIBLE );
 	if ( IsSelected( pEntry ) )
 		rStateSet.AddState( AccessibleStateType::SELECTED );
-	//IAccessibility2 Implementation 2009-----
 	if ( IsEnabled() )
 	{
 		rStateSet.AddState( AccessibleStateType::ENABLED );
@@ -2805,7 +2783,6 @@
 				rStateSet.AddState( AccessibleStateType::FOCUSED );
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 Rectangle SvTreeListBox::GetBoundingRect( SvLBoxEntry* pEntry )
diff --git a/main/svtools/source/control/accessibleruler.cxx b/main/svtools/source/control/accessibleruler.cxx
index 2566c9f..fd458dc 100644
--- a/main/svtools/source/control/accessibleruler.cxx
+++ b/main/svtools/source/control/accessibleruler.cxx
@@ -494,11 +494,9 @@
 	::osl::MutexGuard	aGuard( m_aMutex );
 
 	ThrowExceptionIfNotAlive();
-//IAccessibility2 Implementation 2009-----
 	//the absolute on screen pixel is wrong
 	//return Rectangle( mpRepr->GetParent()->OutputToScreenPixel( mpRepr->GetPosPixel() ), mpRepr->GetSizePixel() );
 	return Rectangle( mpRepr->GetParent()->OutputToAbsoluteScreenPixel( mpRepr->GetPosPixel() ), mpRepr->GetSizePixel() );
-//-----IAccessibility2 Implementation 2009
 }
 
 Rectangle SvtRulerAccessible::GetBoundingBox( void ) throw( RuntimeException )
diff --git a/main/svtools/source/control/headbar.cxx b/main/svtools/source/control/headbar.cxx
index e45518b..6f747f5 100644
--- a/main/svtools/source/control/headbar.cxx
+++ b/main/svtools/source/control/headbar.cxx
@@ -42,10 +42,8 @@
 #endif
 #include <com/sun/star/accessibility/XAccessible.hpp>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #include <vclxaccessibleheaderbar.hxx>
-//-----IAccessibility2 Implementation 2009
 // =======================================================================
 
 struct ImplHeadItem
@@ -99,9 +97,7 @@
 	mbOutDrag		= sal_False;
 	mbItemMode		= sal_False;
 
-	//IAccessibility2 Implementation 2009-----
 	m_pVCLXHeaderBar = NULL;
-	//-----IAccessibility2 Implementation 2009
 	// StyleBits auswerten
 	if ( nWinStyle & WB_DRAG )
 		mbDragable = sal_True;
@@ -123,9 +119,7 @@
 	}
 
 	ImplInitSettings( sal_True, sal_True, sal_True );
-	//IAccessibility2 Implementation 2009-----
 	//SetAccessibleRole(com::sun::star::accessibility::AccessibleRole::COLUMN_HEADER);	
-	//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
@@ -1655,7 +1649,6 @@
     mxAccessible = _xAccessible;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > HeaderBar::GetComponentInterface( sal_Bool bCreate )
 {
     ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > xPeer 
@@ -1670,5 +1663,4 @@
 	else
 		return xPeer;
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/svtools/source/control/ruler.cxx b/main/svtools/source/control/ruler.cxx
index b691171..53dea6f 100644
--- a/main/svtools/source/control/ruler.cxx
+++ b/main/svtools/source/control/ruler.cxx
@@ -32,7 +32,6 @@
 
 #define _SV_RULER_CXX
 #include <svtools/ruler.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <svtools/svtdata.hxx>
 #include <svtools/svtools.hrc>
 using namespace	::rtl;
@@ -40,7 +39,6 @@
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::lang;
 using namespace ::com::sun::star::accessibility;
-//-----IAccessibility2 Implementation 2009
 // =======================================================================
 
 #define RULER_OFF           3
@@ -307,10 +305,8 @@
     else
         aDefSize.Width() = nDefHeight;
     SetOutputSizePixel( aDefSize );
-	//IAccessibility2 Implementation 2009-----
 	SetType(WINDOW_RULER);
 	pAccContext = NULL; 
-	//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
@@ -334,10 +330,8 @@
         Application::RemoveUserEvent( mnUpdateEvtId );
     delete mpSaveData;
     delete mpDragData;
-	//IAccessibility2 Implementation 2009-----
 	if( pAccContext )
 		pAccContext->release();
-	//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
@@ -3194,7 +3188,6 @@
 sal_uInt16              Ruler::GetIndentCount() const { return mpData->nIndents; }
 const RulerIndent*  Ruler::GetIndents() const { return mpData->pIndents; }
 
-//IAccessibility2 Implementation 2009-----
 uno::Reference< XAccessible > Ruler::CreateAccessible()
 {
 	Window*						pParent = GetAccessibleParentWindow();
@@ -3221,4 +3214,3 @@
 	else
 		return uno::Reference< XAccessible >();
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svtools/source/control/valueacc.cxx b/main/svtools/source/control/valueacc.cxx
index 82cfd1f..f39554a 100644
--- a/main/svtools/source/control/valueacc.cxx
+++ b/main/svtools/source/control/valueacc.cxx
@@ -34,7 +34,6 @@
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLERELATIONTYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
@@ -42,7 +41,6 @@
 #ifndef _UTL_ACCESSIBLERELATIONSETHELPER_HXX_
 #include <unotools/accessiblerelationsethelper.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 
 // ----------------
@@ -339,7 +337,6 @@
     throw (uno::RuntimeException)
 {
     ThrowIfDisposed();
-//IAccessibility2 Implementation 2009-----
 	uno::Reference< accessibility::XAccessibleRelationSet > xRelSet;
 	Window* pWindow = (Window*)mpParent;
 	if ( pWindow )
@@ -364,7 +361,6 @@
 		}
 	}
     return xRelSet;
-//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------------
@@ -792,10 +788,7 @@
             nIndex -= 1;
     }
     if (pItem == NULL)
-//IAccessibility2 Implementation 2009-----
-        //pItem = mpParent->ImplGetVisibleItem (static_cast<sal_uInt16>(nIndex));
 	pItem = mpParent->ImplGetItem (static_cast<sal_uInt16>(nIndex));
-//-----IAccessibility2 Implementation 2009
 
     return pItem;
 }
@@ -979,10 +972,7 @@
             // just in case the number of children changes in the mean time.
             try
             {
-//IAccessibility2 Implementation 2009-----
-                //pItem = mpParent->mrParent.ImplGetVisibleItem (i);
                 pItem = mpParent->mrParent.ImplGetItem(i);
-//-----IAccessibility2 Implementation 2009
             }
             catch (lang::IndexOutOfBoundsException aException)
             {
@@ -999,7 +989,6 @@
         }
     }
 
-//IAccessibility2 Implementation 2009-----
 	//if this valueset contain a none field(common value is default), then we should increase the real index and set the noitem index value equal 0.
 	if ( mpParent && ( (mpParent->mrParent.GetStyle() & WB_NONEFIELD) != 0 ) )
 	{
@@ -1009,7 +998,6 @@
 		else
 			nIndexInParent++;
 	}
-//-----IAccessibility2 Implementation 2009
     return nIndexInParent;
 }
 
diff --git a/main/svtools/source/control/valueimp.hxx b/main/svtools/source/control/valueimp.hxx
index 8b3657b..13202ba 100644
--- a/main/svtools/source/control/valueimp.hxx
+++ b/main/svtools/source/control/valueimp.hxx
@@ -87,9 +87,7 @@
 	XubString			maText;
 	void*				mpData;
 	Rectangle			maRect;
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool				bSelected:1;
-	//-----IAccessibility2 Implementation 2009
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >* mpxAcc;
 
     ValueSetItem( ValueSet& rParent );
diff --git a/main/svtools/source/control/valueset.cxx b/main/svtools/source/control/valueset.cxx
index d25e36a..c7db0e3 100644
--- a/main/svtools/source/control/valueset.cxx
+++ b/main/svtools/source/control/valueset.cxx
@@ -1220,7 +1220,6 @@
         ValueSetItem* pItem = mpImpl->mpItemList->GetObject( n );
 
 		//IAccessible2 implementation - also count empty rectangles as visible...
-        // if( pItem->meType != VALUESETITEM_SPACE && !pItem->maRect.IsEmpty() )
 		if( pItem->meType != VALUESETITEM_SPACE )
             nRet++;
     }
@@ -1907,7 +1906,6 @@
 		Invalidate();
 }
 
-//IAccessibility2 Implementation 2009-----
 //method to set accessible when the style is user draw.
 void ValueSet::InsertItem( sal_uInt16 nItemId, const XubString& rText, sal_uInt16 nPos	)
 {
@@ -1923,7 +1921,6 @@
 	if ( IsReallyVisible() && IsUpdateMode() )
 		Invalidate();
 }
-//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
@@ -2799,7 +2796,6 @@
         }
     }
 }
-//IAccessibility2 Implementation 2009-----
 //For sending out the focused event on the first focused item when this valueset is first focused.
 // MT: Focus notifications changed in DEV300 meanwhile, so this is not used for now.
 // Just keeping it here for reference, in case something in out implementation doesn't work as expected...
@@ -2851,7 +2847,6 @@
 }
 */
 //end
-//-----IAccessibility2 Implementation 2009
 
 
 // -----------------------------------------------------------------------
diff --git a/main/svtools/source/control/vclxaccessibleheaderbar.cxx b/main/svtools/source/control/vclxaccessibleheaderbar.cxx
index 56886c8..9b7ffec 100644
--- a/main/svtools/source/control/vclxaccessibleheaderbar.cxx
+++ b/main/svtools/source/control/vclxaccessibleheaderbar.cxx
@@ -19,7 +19,6 @@
  * 
  *************************************************************/
 
-//IAccessibility2 Implementation 2009-----
 
 // MARKER(update_precomp.py): autogen include statement, do not remove
 #include "precompiled_svtools.hxx"
@@ -190,4 +189,3 @@
 	}
     return xChild;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svtools/source/control/vclxaccessibleheaderbaritem.cxx b/main/svtools/source/control/vclxaccessibleheaderbaritem.cxx
index c397182..97a0ab0 100644
--- a/main/svtools/source/control/vclxaccessibleheaderbaritem.cxx
+++ b/main/svtools/source/control/vclxaccessibleheaderbaritem.cxx
@@ -19,7 +19,6 @@
  * 
  *************************************************************/
 
-//IAccessibility2 Implementation 2009-----
 
 // MARKER(update_precomp.py): autogen include statement, do not remove
 #include "precompiled_svtools.hxx"
@@ -400,4 +399,3 @@
 
 	return sText;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svtools/source/edit/svmedit.cxx b/main/svtools/source/edit/svmedit.cxx
index bfc70a3..a423e4a 100644
--- a/main/svtools/source/edit/svmedit.cxx
+++ b/main/svtools/source/edit/svmedit.cxx
@@ -941,9 +941,7 @@
 
 void TextWindow::GetFocus()
 {
-//IAccessibility2 Implementation 2009-----
 	//Window::GetFocus();
-//-----IAccessibility2 Implementation 2009
 	if ( !mbActivePopup )
 	{
 		sal_Bool bGotoCursor = !mpExtTextView->IsReadOnly();
@@ -1250,10 +1248,8 @@
 {
     if ( !pImpSvMEdit )  // might be called from within the dtor, when pImpSvMEdit == NULL is a valid state
         return;
-	//IAccessibility2 Implementation 2009-----
 	//Disable the focused event on scroll pane
 	//Edit::GetFocus();
-	//-----IAccessibility2 Implementation 2009
     pImpSvMEdit->GetFocus();
 }
 
diff --git a/main/svtools/source/edit/texteng.cxx b/main/svtools/source/edit/texteng.cxx
index 1a7f523..e9d9ef6 100644
--- a/main/svtools/source/edit/texteng.cxx
+++ b/main/svtools/source/edit/texteng.cxx
@@ -803,7 +803,7 @@
                         ++nChgPos;
 
                     xub_StrLen nChgLen = static_cast< xub_StrLen >(nNewLen - nChgPos);
-                    String aChgText( aNewText.copy( nChgPos ), nChgLen );
+                    String aChgText( aNewText.copy( nChgPos ).getStr(), nChgLen );
 
                     // select text from first pos to be changed to current pos
                     TextSelection aSel( TextPaM( aPaM.GetPara(), (sal_uInt16) nChgPos ), aPaM );
diff --git a/main/svtools/source/inc/filectrl.hrc b/main/svtools/source/inc/filectrl.hrc
index 377d4c2..16ffa79 100644
--- a/main/svtools/source/inc/filectrl.hrc
+++ b/main/svtools/source/inc/filectrl.hrc
@@ -26,12 +26,10 @@
 
 #define STR_FILECTRL_BUTTONTEXT		333		// ID-Range?!
 
-//IAccessibility2 Implementation 2009-----
 #define  STR_TABBAR_PUSHBUTTON_MOVET0HOME  ( STR_FILECTRL_BUTTONTEXT+ 1)
 #define  STR_TABBAR_PUSHBUTTON_MOVELEFT       ( STR_FILECTRL_BUTTONTEXT+ 2)
 #define  STR_TABBAR_PUSHBUTTON_MOVERIGHT     ( STR_FILECTRL_BUTTONTEXT+ 3)
 #define  STR_TABBAR_PUSHBUTTON_MOVETOEND    ( STR_FILECTRL_BUTTONTEXT+ 4)
-//-----IAccessibility2 Implementation 2009
 
 #endif
 
diff --git a/main/svtools/source/misc/acceleratorexecute.cxx b/main/svtools/source/misc/acceleratorexecute.cxx
index 265f986..e34f77f 100644
--- a/main/svtools/source/misc/acceleratorexecute.cxx
+++ b/main/svtools/source/misc/acceleratorexecute.cxx
@@ -72,9 +72,7 @@
 #include <vcl/window.hxx>
 #include <vcl/svapp.hxx>
 #include <vos/mutex.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <comphelper/uieventslogger.hxx>
-//-----IAccessibility2 Implementation 2009
 
 //===============================================
 // namespace
@@ -252,7 +250,6 @@
     sal_Bool bRet = xDispatch.is();
     if ( bRet )
     {
-//IAccessibility2 Implementation 2009-----
         if(::comphelper::UiEventsLogger::isEnabled() && m_xSMGR.is() && m_xDispatcher.is()) //#i88653#
         {
             try
@@ -269,7 +266,6 @@
             catch(const css::uno::Exception&)
                 { }
         }
-//-----IAccessibility2 Implementation 2009
         // Note: Such instance can be used one times only and destroy itself afterwards .-)
         AsyncAccelExec* pExec = AsyncAccelExec::createOnShotInstance(xDispatch, aURL);
         pExec->execAsync();
diff --git a/main/svtools/source/misc/embedhlp.cxx b/main/svtools/source/misc/embedhlp.cxx
index 2bdf151..65df230 100644
--- a/main/svtools/source/misc/embedhlp.cxx
+++ b/main/svtools/source/misc/embedhlp.cxx
@@ -34,14 +34,12 @@
 #include <toolkit/helper/vclunohelper.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <unotools/streamwrap.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/chart2/XChartDocument.hpp>
 #include <com/sun/star/chart2/XCoordinateSystem.hpp>
 #include <com/sun/star/chart2/XCoordinateSystemContainer.hpp>
 #include <com/sun/star/chart2/XDiagram.hpp>
 #include <com/sun/star/chart2/XChartTypeContainer.hpp>
 #include <com/sun/star/chart2/XChartType.hpp>
-//-----IAccessibility2 Implementation 2009
 #include <tools/globname.hxx>
 #include <sot/clsids.hxx>
 #include <com/sun/star/util/XModifyListener.hpp>
@@ -944,7 +942,6 @@
     return sal_False;
 }
 
-//IAccessibility2 Implementation 2009-----
 // MT: Only used for getting accessible attributes, which are not localized
 rtl::OUString EmbeddedObjectRef::GetChartType()
 {
@@ -1038,7 +1035,6 @@
 	}
 	return Style;	
 }
-//-----IAccessibility2 Implementation 2009
 
 // #i104867#
 sal_uInt32 EmbeddedObjectRef::getGraphicVersion() const
diff --git a/main/svtools/source/table/cellvalueconversion.cxx b/main/svtools/source/table/cellvalueconversion.cxx
index 3e8d04f..820dd04 100644
--- a/main/svtools/source/table/cellvalueconversion.cxx
+++ b/main/svtools/source/table/cellvalueconversion.cxx
@@ -426,7 +426,7 @@
                     ::rtl::OStringBuffer message( "lcl_getValueNormalizer: unsupported type '" );
                     message.append( ::rtl::OUStringToOString( sTypeName, RTL_TEXTENCODING_ASCII_US ) );
                     message.append( "'!" );
-                    OSL_ENSURE( false, message.makeStringAndClear() );
+                    OSL_ENSURE( false, message.getStr() );
 #endif
                 }
                 io_data.aNormalizers[ sTypeName ] = o_formatter;
diff --git a/main/svtools/source/uno/wizard/unowizard.cxx b/main/svtools/source/uno/wizard/unowizard.cxx
index 8ae643d..f2d8e7f 100644
--- a/main/svtools/source/uno/wizard/unowizard.cxx
+++ b/main/svtools/source/uno/wizard/unowizard.cxx
@@ -217,7 +217,7 @@
     static ::rtl::OUString lcl_getHelpURL( const rtl::OString& sHelpId )
     {
         ::rtl::OUStringBuffer aBuffer;
-        ::rtl::OUString aTmp( sHelpId, sHelpId.getLength(), RTL_TEXTENCODING_UTF8 );
+        ::rtl::OUString aTmp( OStringToOUString( sHelpId, RTL_TEXTENCODING_UTF8 ));
         INetURLObject aHID( aTmp );
         if ( aHID.GetProtocol() == INET_PROT_NOT_VALID )
             aBuffer.appendAscii( INET_HID_SCHEME );
diff --git a/main/svx/inc/svx/AccessibleControlShape.hxx b/main/svx/inc/svx/AccessibleControlShape.hxx
index 171da24..23f76e0 100644
--- a/main/svx/inc/svx/AccessibleControlShape.hxx
+++ b/main/svx/inc/svx/AccessibleControlShape.hxx
@@ -63,10 +63,8 @@
         const AccessibleShapeTreeInfo& rShapeTreeInfo);
 	virtual ~AccessibleControlShape( );
 
-	//IAccessibility2 Implementation 2009-----
     ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL  GetControlModel( ) { return m_xControlModel;} ;
     AccessibleControlShape* SAL_CALL GetLabeledByControlShape();
-	//-----IAccessibility2 Implementation 2009
 protected:
 	//---  XAccessible  ----------------------------------------
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL getAccessibleContext( ) throw(::com::sun::star::uno::RuntimeException);
diff --git a/main/svx/inc/svx/AccessibleGraphicShape.hxx b/main/svx/inc/svx/AccessibleGraphicShape.hxx
index 8d22616..08e6712 100644
--- a/main/svx/inc/svx/AccessibleGraphicShape.hxx
+++ b/main/svx/inc/svx/AccessibleGraphicShape.hxx
@@ -91,7 +91,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 ///	Return this object's role.
 	virtual sal_Int16 SAL_CALL getAccessibleRole (void) throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 protected:
     ///	Create a name string that contains the accessible name.
 	virtual ::rtl::OUString
diff --git a/main/svx/inc/svx/AccessibleOLEShape.hxx b/main/svx/inc/svx/AccessibleOLEShape.hxx
index 9400b3f..4289cdb 100644
--- a/main/svx/inc/svx/AccessibleOLEShape.hxx
+++ b/main/svx/inc/svx/AccessibleOLEShape.hxx
@@ -99,10 +99,8 @@
     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type> SAL_CALL
         getTypes (void)
         throw (::com::sun::star::uno::RuntimeException);
-//IAccessibility2 Implementation 2009-----
 // ====== XAccessibleExtendedAttributes =====================================
     virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-//-----IAccessibility2 Implementation 2009
 protected:
     ///	Create a name string that contains the accessible name.
 	virtual ::rtl::OUString
diff --git a/main/svx/inc/svx/AccessibleShape.hxx b/main/svx/inc/svx/AccessibleShape.hxx
index b953408..2568a6d 100644
--- a/main/svx/inc/svx/AccessibleShape.hxx
+++ b/main/svx/inc/svx/AccessibleShape.hxx
@@ -37,7 +37,6 @@
 #include <com/sun/star/lang/XUnoTunnel.hpp>
 #include <svx/AccessibleTextHelper.hxx>
 #include "svx/svxdllapi.h"
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLESELECTION_HPP_ 
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 #endif
@@ -59,7 +58,6 @@
 #ifndef INCLUDED_COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLEHYPERLINK_HPP
 #include <com/sun/star/accessibility/XAccessibleHyperlink.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 #include "ChildrenManager.hxx"
 
@@ -98,12 +96,10 @@
 class SVX_DLLPUBLIC AccessibleShape
     :	public AccessibleContextBase,
         public AccessibleComponentBase,
-		//IAccessibility2 Implementation 2009-----
         public ::com::sun::star::accessibility::XAccessibleSelection, 
         public ::com::sun::star::accessibility::XAccessibleExtendedAttributes,
         public ::com::sun::star::accessibility::XAccessibleGroupPosition,
         public com::sun::star::accessibility::XAccessibleHypertext,
-		//-----IAccessibility2 Implementation 2009
         public IAccessibleViewForwarderListener,
         public ::com::sun::star::document::XEventListener,
         public ::com::sun::star::lang::XUnoTunnel
@@ -129,7 +125,6 @@
 	AccessibleShape (
         const AccessibleShapeInfo& rShapeInfo,
         const AccessibleShapeTreeInfo& rShapeTreeInfo);
-	//IAccessibility2 Implementation 2009-----
 	AccessibleShape (
         const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& rxShape, const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>& rxParent, const AccessibleShapeTreeInfo& rShapeTreeInfo, sal_Int32 nIndex = -1);
 	 //Solution: Overwrite the object's current name.
@@ -178,7 +173,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 	virtual ::rtl::OUString SAL_CALL getObjectLink( const ::com::sun::star::uno::Any& accoject )
         throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
     /** The destructor releases its children manager and text engine if
         still existent.  These are responsible to send appropriate events.
     */
@@ -483,14 +477,12 @@
 	virtual ::rtl::OUString
     	CreateAccessibleDescription (void)
         throw (::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	virtual ::rtl::OUString
        GetFullAccessibleName(AccessibleShape *shape) 
        throw (::com::sun::star::uno::RuntimeException);
     virtual::rtl::OUString GetStyle();
 	void UpdateDocumentAllSelState(::com::sun::star::uno::Reference< 
 		::com::sun::star::accessibility::XAccessibleStateSet > &xStateSet);
-	//-----IAccessibility2 Implementation 2009
     /** Update the <const>OPAQUE</const> and <const>SELECTED</const> state.
     */
     virtual void UpdateStates (void);
@@ -504,10 +496,8 @@
     SVX_DLLPRIVATE explicit AccessibleShape (const AccessibleShape&);
     /// Don't use the assignment operator.  Do we need this?
     SVX_DLLPRIVATE AccessibleShape& operator= (const AccessibleShape&);
-	//IAccessibility2 Implementation 2009-----
     //Solution:Old accessible name
     ::rtl::OUString aAccName;
-	//-----IAccessibility2 Implementation 2009
 
     /** Call this method when the title, name, or description of the mxShape
         member (may) have been changed.
diff --git a/main/svx/inc/svx/AccessibleTableShape.hxx b/main/svx/inc/svx/AccessibleTableShape.hxx
index 5ffb069..73021e6 100644
--- a/main/svx/inc/svx/AccessibleTableShape.hxx
+++ b/main/svx/inc/svx/AccessibleTableShape.hxx
@@ -34,11 +34,9 @@
 #include <cppuhelper/implbase2.hxx>
 
 #include <svx/AccessibleShape.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/view/XSelectionChangeListener.hpp>
 #include <com/sun/star/accessibility/XAccessibleTableSelection.hpp>
 #include <cppuhelper/compbase5.hxx>
-//-----IAccessibility2 Implementation 2009
 
 #include <boost/noncopyable.hpp>
 
@@ -49,10 +47,8 @@
 namespace accessibility
 {
 	class AccessibleTableShapeImpl;
-	//IAccessibility2 Implementation 2009
 	class AccessibleCell;
 
-	//IAccessibility2 Implementation 2009-----
 	/*typedef ::cppu::ImplInheritanceHelper2<	AccessibleShape,
 											::com::sun::star::accessibility::XAccessibleSelection,
 											::com::sun::star::accessibility::XAccessibleTable
@@ -61,7 +57,6 @@
 											::com::sun::star::accessibility::XAccessibleTable,
 											::com::sun::star::view::XSelectionChangeListener
 										  >	AccessibleTableShape_Base;
-	//-----IAccessibility2 Implementation 2009
 /**	@descr
 */
 class AccessibleTableShape : boost::noncopyable, public AccessibleTableShape_Base, public ::com::sun::star::accessibility::XAccessibleTableSelection
@@ -115,7 +110,6 @@
     virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount(  ) throw ( ::com::sun::star::uno::RuntimeException );
     virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
     virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex )  throw ( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException );
-	//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleTableSelection ============================================
 	virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
@@ -125,7 +119,6 @@
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
 	virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-	//-----IAccessibility2 Implementation 2009
 
 	// XServiceInfo
 	virtual ::rtl::OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException);
@@ -142,7 +135,6 @@
         throw (::com::sun::star::uno::RuntimeException);
 	sal_Int32 mnPreviousSelectionCount;
 	using AccessibleShape::disposing;
-	//IAccessibility2 Implementation 2009-----
 	friend class AccessibleTableHeaderShape;
 	
 	void getColumnAndRow( sal_Int32 nChildIndex, sal_Int32& rnColumn, sal_Int32& rnRow ) throw (::com::sun::star::lang::IndexOutOfBoundsException );
@@ -154,7 +146,6 @@
 	sal_Bool ResetStateDirectly (sal_Int16 aState);
 	// Get the currently active cell which is text editing
 	AccessibleCell* GetActiveAccessibleCell();
-	//-----IAccessibility2 Implementation 2009
 
 protected:
 	virtual ::rtl::OUString CreateAccessibleBaseName(void) throw (::com::sun::star::uno::RuntimeException);
@@ -167,12 +158,9 @@
 
 private:
 	rtl::Reference< AccessibleTableShapeImpl > mxImpl;
-	//IAccessibility2 Implementation 2009-----
 	sal_Int32 GetIndexOfSelectedChild( sal_Int32 nSelectedChildIndex ) const;
-	//-----IAccessibility2 Implementation 2009
 };
 
-//IAccessibility2 Implementation 2009-----
 typedef ::cppu::WeakImplHelper5<
 			::com::sun::star::accessibility::XAccessible,
 			::com::sun::star::accessibility::XAccessibleComponent,
@@ -252,7 +240,6 @@
 	sal_Bool mbRow;
 	rtl::Reference< AccessibleTableShape > mpTable;
 };
-//-----IAccessibility2 Implementation 2009
 
 } // end of namespace accessibility
 
diff --git a/main/svx/inc/svx/ChildrenManager.hxx b/main/svx/inc/svx/ChildrenManager.hxx
index 138c55b..1554b63 100644
--- a/main/svx/inc/svx/ChildrenManager.hxx
+++ b/main/svx/inc/svx/ChildrenManager.hxx
@@ -130,10 +130,8 @@
     	GetChild (long nIndex)
         throw (::com::sun::star::uno::RuntimeException,
                ::com::sun::star::lang::IndexOutOfBoundsException);
-//IAccessibility2 Implementation 2009-----
         ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> GetChild (const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& xShape) throw (::com::sun::star::uno::RuntimeException);
         ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape> GetChildShape (long nIndex) throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 
     /** Update the child manager.  Take care of a modified set of children
         and modified visible area.  This method can optimize the update
diff --git a/main/svx/inc/svx/EnhancedCustomShapeTypeNames.hxx b/main/svx/inc/svx/EnhancedCustomShapeTypeNames.hxx
index d76c9df..e25e1d7 100644
--- a/main/svx/inc/svx/EnhancedCustomShapeTypeNames.hxx
+++ b/main/svx/inc/svx/EnhancedCustomShapeTypeNames.hxx
@@ -31,7 +31,6 @@
 	SVX_DLLPUBLIC MSO_SPT Get( const rtl::OUString& );
 	SVX_DLLPUBLIC rtl::OUString Get( const MSO_SPT );
 
-	//IAccessibility2 Implementation 2009
 	rtl::OUString GetAccName( const rtl::OUString& );
 }
 
diff --git a/main/svx/inc/svx/IAccessibleParent.hxx b/main/svx/inc/svx/IAccessibleParent.hxx
index 1f37c86..4d857d4 100644
--- a/main/svx/inc/svx/IAccessibleParent.hxx
+++ b/main/svx/inc/svx/IAccessibleParent.hxx
@@ -27,11 +27,9 @@
 #include <com/sun/star/uno/RuntimeException.hpp>
 #include <com/sun/star/drawing/XShape.hpp>
 #include <sal/types.h>
-//IAccessibility2 Implementation 2009-----
 #ifndef _SVX_ACCESSIBILITY_ACCESSIBLE_SHAPE_MANAGER_HXX
 #include "AccessibleControlShape.hxx"
 #endif
-//-----IAccessibility2 Implementation 2009
 namespace accessibility {
 
 class AccessibleShape;
@@ -88,7 +86,6 @@
 		const long _nIndex,
 		const AccessibleShapeTreeInfo& _rShapeTreeInfo
 	)	throw (::com::sun::star::uno::RuntimeException) = 0;
-	//IAccessibility2 Implementation 2009-----
 	//Add this method to support Form Controls
 	virtual AccessibleControlShape* GetAccControlShapeFromModel
 		(::com::sun::star::beans::XPropertySet*) 
@@ -99,7 +96,6 @@
             ::com::sun::star::drawing::XShape>&)
 			throw (::com::sun::star::uno::RuntimeException){return NULL;};
 	virtual sal_Bool IsDocumentSelAll(){ return sal_False; }
-	//-----IAccessibility2 Implementation 2009
 };
 
 } // end of namespace accessibility
diff --git a/main/svx/inc/svx/ctredlin.hxx b/main/svx/inc/svx/ctredlin.hxx
index c48b84e..26c4730 100644
--- a/main/svx/inc/svx/ctredlin.hxx
+++ b/main/svx/inc/svx/ctredlin.hxx
@@ -299,9 +299,7 @@
 	void			Enable( bool bEnable = true, bool bChild = true );
 	void			Disable( bool bChild = true );
 
-	//IAccessibility2 Implementation 2009-----
 	void			SetAccessibleRelationMemberOf( Window* pWindow);
-	//-----IAccessibility2 Implementation 2009
 
 	// } Methoden fuer Calc
 };
diff --git a/main/svx/inc/svx/dialogs.hrc b/main/svx/inc/svx/dialogs.hrc
index ea1ca87..8530040 100644
--- a/main/svx/inc/svx/dialogs.hrc
+++ b/main/svx/inc/svx/dialogs.hrc
@@ -48,13 +48,11 @@
 #define RID_SVXSTR_LINESTYLE                (RID_SVX_START + 173)
 #define RID_SVXSTR_FIELDUNIT_TABLE			(RID_SVX_START + 311)
 #define RID_SVXSTR_COLOR_USER               (RID_SVX_START + 250)
-//IAccessibility2 Implementation 2009-----
 #define RID_SVXSTR_GALLERYPROPS_GALTHEME	(RID_SVX_START + 251)
 #define RID_SVXSTR_GALLERY_THEMEITEMS		(RID_SVX_START + 252)
 #define RID_SVXSTR_GALLERY_THEMENAME		(RID_SVX_START + 253)
 #define RID_SVXSTR_GALLERY_FILESFOUND		(RID_SVX_START + 254)
 #define RID_SVXSTR_GALLERY_PREVIEW			(RID_SVX_START + 255)
-//-----IAccessibility2 Implementation 2009
 
 // factory IDs of tabpages implemented in CUI
 #define RID_SVXPAGE_CHAR_TWOLINES			(RID_SVX_START + 242)
@@ -951,9 +949,7 @@
 #define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_3                     (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 3)
 #define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_4                     (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 4)
 
-//IAccessibility2 Implementation 2009-----
 #define RID_SVXSTR_TEXTCOLOR								(RID_SVX_START + 1178)
-//-----IAccessibility2 Implementation 2009
 
 #define RID_SVXSTR_FINDBAR_FIND                             (RID_SVX_START + 1190)
 
diff --git a/main/svx/inc/svx/dlgctrl.hxx b/main/svx/inc/svx/dlgctrl.hxx
index 580792e..c822e31 100644
--- a/main/svx/inc/svx/dlgctrl.hxx
+++ b/main/svx/inc/svx/dlgctrl.hxx
@@ -78,8 +78,7 @@
 #define CS_NOVERT	2		// no vertikal input information is used
 
 class SvxRectCtlAccessibleContext;
-class SvxPixelCtlAccessible; // IAccessibility2 implementation 2009
-
+class SvxPixelCtlAccessible;
 class SVX_DLLPUBLIC SvxRectCtl : public Control
 {
 private:
@@ -215,11 +214,9 @@
 	Size		aRectSize;
 	sal_uInt16* 	pPixel;
 	sal_Bool		bPaintable;
-	// IAccessibility2 implementation 2009. ------
 	//Solution:Add member identifying position
 	Point       aFocusPosition;
 	Rectangle   implCalFocusRect( const Point& aPosition );
-	// ------ IAccessibility2 implementation 2009.
 	void	ChangePixel( sal_uInt16 nPixel );
 
 public:
@@ -245,7 +242,6 @@
 
 	void	SetPaintable( sal_Bool bTmp ) { bPaintable = bTmp; }
 	void	Reset();
-	// IAccessibility2 implementation 2009. ------
 	SvxPixelCtlAccessible*	m_pAccess;
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >		m_xAccess;
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible();
@@ -263,7 +259,6 @@
 	virtual void        KeyInput( const KeyEvent& rKEvt );
 	virtual void        GetFocus();
     virtual void        LoseFocus();
-	// ------ IAccessibility2 implementation 2009.
 };
 
 /*************************************************************************
diff --git a/main/svx/inc/svx/sdr/table/tablecontroller.hxx b/main/svx/inc/svx/sdr/table/tablecontroller.hxx
index a942ed3..12ca75d 100755
--- a/main/svx/inc/svx/sdr/table/tablecontroller.hxx
+++ b/main/svx/inc/svx/sdr/table/tablecontroller.hxx
@@ -102,7 +102,6 @@
 
     SVX_DLLPRIVATE void onTableModified();
 
-//IAccessibility2 Implementation 2009-----
 	sal_Bool selectRow( sal_Int32 row );
 	sal_Bool selectColumn( sal_Int32 column );
 	sal_Bool deselectRow( sal_Int32 row );
@@ -114,7 +113,6 @@
 	::sdr::table::SdrTableObj* GetTableObj() { return dynamic_cast< ::sdr::table::SdrTableObj* >( mxTableObj.get() ); }
 	//declare event notification method
 	void NotifySelection( const CellPos& firstPos, const CellPos& lastPos, const CellPos& newPos );
-//-----IAccessibility2 Implementation 2009
 private:
     SvxTableController(SvxTableController &); // not defined
     void operator =(SvxTableController &); // not defined
diff --git a/main/svx/inc/svx/srchdlg.hxx b/main/svx/inc/svx/srchdlg.hxx
index 1a6fff9..37846fd 100644
--- a/main/svx/inc/svx/srchdlg.hxx
+++ b/main/svx/inc/svx/srchdlg.hxx
@@ -155,19 +155,15 @@
 	PushButton&     GetReplaceBtn() { return aReplaceBtn; }
 
 	sal_Int32			GetTransliterationFlags() const;
-//IAccessibility2 Impplementaton 2009-----
 	void SetDocWin( Window* pDocWin ) { mpDocWin = pDocWin; }
 	Window* GetDocWin() { return mpDocWin; }
 	void SetSrchFlag( sal_Bool bSuccess = sal_False ) { mbSuccess = bSuccess; }
 	sal_Bool GetSrchFlag() { return mbSuccess; }
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > 
 		GetComponentInterface( sal_Bool bCreate );
-//-----IAccessibility2 Impplementaton 2009
 private:
-//IAccessibility2 Impplementaton 2009-----
 	Window*			mpDocWin;
 	sal_Bool			mbSuccess;
-//-----IAccessibility2 Impplementaton 2009
 	FixedText       aSearchText;
 	ComboBox        aSearchLB;
 	ListBox         aSearchTmplLB;
diff --git a/main/svx/inc/svx/svdmodel.hxx b/main/svx/inc/svx/svdmodel.hxx
index 07c1ddb..52279cf 100644
--- a/main/svx/inc/svx/svdmodel.hxx
+++ b/main/svx/inc/svx/svdmodel.hxx
@@ -84,9 +84,7 @@
     class IEmbeddedHelper;
 }
 
-//IAccessibility2 Implementation 2009-----
 class ImageMap;
-//-----IAccessibility2 Implementation 2009
 
 namespace sfx2{
     class LinkManager;
@@ -728,10 +726,8 @@
 
     static const ::com::sun::star::uno::Sequence< sal_Int8 >& getUnoTunnelImplementationId();
 
-	//IAccessibility2 Implementation 2009-----
 	virtual ImageMap* GetImageMapForObject(SdrObject*){return NULL;};
 	virtual sal_Int32 GetHyperlinkCount(SdrObject*){return 0;}
-	//-----IAccessibility2 Implementation 2009
 
 	/** enables (true) or disables (false) recording of undo actions
 		If undo actions are added while undo is disabled, they are deleted.
diff --git a/main/svx/inc/svx/svdmrkv.hxx b/main/svx/inc/svx/svdmrkv.hxx
index e79340e..2426850 100644
--- a/main/svx/inc/svx/svdmrkv.hxx
+++ b/main/svx/inc/svx/svdmrkv.hxx
@@ -511,9 +511,7 @@
 	// Endpunkt der Spiegelachse
     const Point& GetRef2() const { return aRef1; }
     void SetRef2(const Point& rPt);
-//IAccessibility2 Implementation 2009-----
 	void UnmarkObj(SdrObject* pObj);
-//-----IAccessibility2 Implementation 2009
 };
 
 ////////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/main/svx/inc/svx/svdoashp.hxx b/main/svx/inc/svx/svdoashp.hxx
index b6e0fd5..9f9e3f4 100644
--- a/main/svx/inc/svx/svdoashp.hxx
+++ b/main/svx/inc/svx/svdoashp.hxx
@@ -259,9 +259,7 @@
 
 	using SdrTextObj::NbcSetOutlinerParaObject;
 
-	//IAccessibility2 Implementation 2009-----
 	::rtl::OUString GetCustomShapeName();
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif //_SVDOASHP_HXX
diff --git a/main/svx/inc/svx/svdobj.hxx b/main/svx/inc/svx/svdobj.hxx
index 8597dcd..703a1b7 100644
--- a/main/svx/inc/svx/svdobj.hxx
+++ b/main/svx/inc/svx/svdobj.hxx
@@ -452,9 +452,6 @@
 	SdrObjUserCall*				pUserCall;
 	SdrObjPlusData*				pPlusData;    // Broadcaster, UserData, Konnektoren, ... (Das ist der Bitsack)
 
-//IAccessibility2 Implementation 2009-----
-	SdrObject*	pCaptionObj;
-//-----IAccessibility2 Implementation 2009
 	sal_uInt32					nOrdNum;      // Rangnummer des Obj in der Liste
 
     /** Position in the navigation order.  SAL_MAX_UINT32 when not used.
@@ -1131,9 +1128,6 @@
     // #121917#
     virtual bool HasText() const;
 
-//IAccessibility2 Implementation 2009-----
-	const SdrObject* GetCaptionObj() const;
-//-----IAccessibility2 Implementation 2009
 protected:
     void    impl_setUnoShape( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxUnoShape );
 
diff --git a/main/svx/inc/svx/svdoole2.hxx b/main/svx/inc/svx/svdoole2.hxx
index f703b7a..bf4d96f 100644
--- a/main/svx/inc/svx/svdoole2.hxx
+++ b/main/svx/inc/svx/svdoole2.hxx
@@ -84,9 +84,7 @@
 	void Init();
 
 public:
-//IAccessibility2 Implementation 2009-----
 	String GetStyleString();
-//-----IAccessibility2 Implementation 2009
 	TYPEINFO();
 
 	SdrOle2Obj(FASTBOOL bFrame_=sal_False);
diff --git a/main/svx/inc/svx/svdstr.hrc b/main/svx/inc/svx/svdstr.hrc
index 2815daa..4e4567c 100644
--- a/main/svx/inc/svx/svdstr.hrc
+++ b/main/svx/inc/svx/svdstr.hrc
@@ -181,7 +181,6 @@
 #define STR_ObjNameSingulMEDIA				(STR_ObjNameBegin + 143)
 #define STR_ObjNamePluralMEDIA				(STR_ObjNameBegin + 144)
 
-//IAccessibility2 Implementation 2009-----
 #define STR_ObjNameSingulFONTWORK			(STR_ObjNameBegin+145)
 #define STR_ObjNamePluralFONTWORK			(STR_ObjNameBegin+146)
 
@@ -191,7 +190,6 @@
 
 #define STR_ObjNameEnd               		(STR_ObjNamePluralGRAFSVG)
 
-//-----IAccessibility2 Implementation 2009
 #define STR_EditBegin                (STR_ObjNameEnd+1)
 #define STR_EditWithCopy             (STR_EditBegin  +  0)
 #define STR_EditPosSize              (STR_EditBegin  +  1)
diff --git a/main/svx/source/accessibility/AccessibleControlShape.cxx b/main/svx/source/accessibility/AccessibleControlShape.cxx
index f8b93b4..b991428 100644
--- a/main/svx/source/accessibility/AccessibleControlShape.cxx
+++ b/main/svx/source/accessibility/AccessibleControlShape.cxx
@@ -44,7 +44,6 @@
 #include <svx/svdpagv.hxx>
 #include "svx/svdstr.hrc"
 #include <algorithm>
-//IAccessibility2 Implementation 2009-----
 #ifndef _COMPHELPER_PROPERTY_HXX_
 #include <comphelper/property.hxx>
 #endif
@@ -60,7 +59,6 @@
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLERELATIONTYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::comphelper;
 using namespace ::accessibility;
 using namespace	::com::sun::star::accessibility;
@@ -94,14 +92,12 @@
 		static ::rtl::OUString s_sLabelPropertyLabel( RTL_CONSTASCII_USTRINGPARAM( "Label" ) );
 		return s_sLabelPropertyLabel;
 	}
-	//IAccessibility2 Implementation 2009-----
 	//................................................................
 	const ::rtl::OUString& lcl_getLabelControlPropertyName( )
 	{
 		static ::rtl::OUString s_sLabelControlPropertyLabel( RTL_CONSTASCII_USTRINGPARAM( "LabelControl" ) );
 		return s_sLabelControlPropertyLabel;
 	}
-	//-----IAccessibility2 Implementation 2009
 	//................................................................
 	// return the property which should be used as AccessibleName
 	const ::rtl::OUString& lcl_getPreferredAccNameProperty( const Reference< XPropertySetInfo >& _rxPSI )
@@ -661,7 +657,6 @@
 {
 	// TODO
 	// return AccessibleShape::getAccessibleRelationSet( );
-	//IAccessibility2 Implementation 2009-----
     utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
 	ensureControlModelAccess();
 	AccessibleControlShape* pCtlAccShape = GetLabeledByControlShape();
@@ -682,14 +677,12 @@
 	}
 	Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
 	return xSet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
 ::rtl::OUString AccessibleControlShape::CreateAccessibleName (void) throw (RuntimeException)
 {
 	ensureControlModelAccess();
-	//IAccessibility2 Implementation 2009-----
 	::rtl::OUString sName;
 	if ( getAccessibleRole() != AccessibleRole::SHAPE	
 		&& getAccessibleRole() != AccessibleRole::RADIO_BUTTON  )
@@ -710,7 +703,6 @@
 			sName = AccessibleShape::CreateAccessibleName();
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	// now that somebody first asked us for our name, ensure that we are listening to name changes on the model
 	m_bListeningForName = ensureListeningState( m_bListeningForName, sal_True, lcl_getPreferredAccNameProperty( m_xModelPropsMeta ) );
 
@@ -972,7 +964,6 @@
 {
     // not interested in
 }
-//IAccessibility2 Implementation 2009-----
 AccessibleControlShape* SAL_CALL AccessibleControlShape::GetLabeledByControlShape( )
 {
 	if(m_xControlModel.is())
@@ -993,4 +984,3 @@
 	}
 	return NULL;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svx/source/accessibility/AccessibleFrameSelector.cxx b/main/svx/source/accessibility/AccessibleFrameSelector.cxx
index b2d6ecb..e301c7c 100644
--- a/main/svx/source/accessibility/AccessibleFrameSelector.cxx
+++ b/main/svx/source/accessibility/AccessibleFrameSelector.cxx
@@ -191,9 +191,7 @@
 sal_Int16 AccFrameSelector::getAccessibleRole(  ) throw (RuntimeException)
 {
     // return AccessibleRole::OPTION_PANE;
-	//IAccessibility2 Implementation 2009-----
 	return meBorder == FRAMEBORDER_NONE ? AccessibleRole::OPTION_PANE : AccessibleRole::CHECK_BOX;
-	//-----IAccessibility2 Implementation 2009
 }
 
 // ----------------------------------------------------------------------------
@@ -238,7 +236,6 @@
     //        pHelper->AddRelation(aLabelRelation);
     //    }
     //}
-	//IAccessibility2 Implementation 2009-----
     if(meBorder == FRAMEBORDER_NONE)
     {
         //add the label relation
@@ -261,7 +258,6 @@
             pHelper->AddRelation(aMemberOfRelation);
 		}
     }
-	//-----IAccessibility2 Implementation 2009
     return xRet;
 }
 
diff --git a/main/svx/source/accessibility/AccessibleGraphicShape.cxx b/main/svx/source/accessibility/AccessibleGraphicShape.cxx
index 8aabcff..5856125 100644
--- a/main/svx/source/accessibility/AccessibleGraphicShape.cxx
+++ b/main/svx/source/accessibility/AccessibleGraphicShape.cxx
@@ -61,10 +61,8 @@
 ::rtl::OUString SAL_CALL AccessibleGraphicShape::getAccessibleImageDescription (void)
     throw (::com::sun::star::uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	if(m_pShape)						 
       		return m_pShape->GetTitle();
-//-----IAccessibility2 Implementation 2009
     return AccessibleShape::getAccessibleDescription ();
 }
 
@@ -210,18 +208,14 @@
     AccessibleGraphicShape::CreateAccessibleDescription (void)
     throw (::com::sun::star::uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	//Solution: Don't use the same information for accessible name and accessible description.
-      	//return CreateAccessibleName ();
   	 ::rtl::OUString sDesc;
 		if(m_pShape)						 
     	sDesc =  m_pShape->GetTitle();
 		if(sDesc.getLength() > 0)
 			return sDesc;
     	return CreateAccessibleBaseName();
-//-----IAccessibility2 Implementation 2009
 }
-//IAccessibility2 Implementation 2009-----
 //	Return this object's role.
 sal_Int16 SAL_CALL AccessibleGraphicShape::getAccessibleRole (void)
 		throw (::com::sun::star::uno::RuntimeException)
@@ -230,10 +224,8 @@
 	if( m_pShape->GetModel()->GetImageMapForObject(m_pShape) != NULL )
 		return AccessibleRole::IMAGE_MAP;
 	else
-		//return AccessibleRole::SHAPE;
 		return AccessibleShape::getAccessibleRole();
 	return nAccessibleRole;
 }
-//-----IAccessibility2 Implementation 2009
 
 
diff --git a/main/svx/source/accessibility/AccessibleOLEShape.cxx b/main/svx/source/accessibility/AccessibleOLEShape.cxx
index ae4a0d3..89388f9 100644
--- a/main/svx/source/accessibility/AccessibleOLEShape.cxx
+++ b/main/svx/source/accessibility/AccessibleOLEShape.cxx
@@ -29,9 +29,7 @@
 
 #include <svx/ShapeTypeHandler.hxx>
 #include <svx/SvxShapeTypes.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <svx/svdoole2.hxx>
-//-----IAccessibility2 Implementation 2009
 using namespace accessibility;
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
@@ -181,7 +179,6 @@
 
 	return aTypeList;
 }
-//IAccessibility2 Implementation 2009-----
 //=====  XAccessibleExtendedAttributes  ========================================================
 uno::Any SAL_CALL AccessibleOLEShape::getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) 
@@ -198,7 +195,6 @@
 	strRet <<= style;
 	return strRet;
 }
-//-----IAccessibility2 Implementation 2009
 
 
 ///	Set this object's name if is different to the current name.
diff --git a/main/svx/source/accessibility/AccessibleShape.cxx b/main/svx/source/accessibility/AccessibleShape.cxx
index 6dadf40..a63b8a1 100644
--- a/main/svx/source/accessibility/AccessibleShape.cxx
+++ b/main/svx/source/accessibility/AccessibleShape.cxx
@@ -31,11 +31,9 @@
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLE_ROLE_HPP_
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #endif
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLETEXTTYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleTextType.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLE_STATE_TYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #endif
@@ -66,7 +64,6 @@
 #include <unotools/accessiblestatesethelper.hxx>
 #include <svx/svdview.hxx>
 #include "AccessibleEmptyEditSource.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <svx/svdpage.hxx>
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLERELATIONTYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
@@ -74,20 +71,15 @@
 #ifndef _UTL_ACCESSIBLERELATIONSETHELPER_HXX_
 #include <unotools/accessiblerelationsethelper.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 using namespace	::com::sun::star::accessibility;
-//IAccessibility2 Implementation 2009-----
 using ::com::sun::star::lang::IndexOutOfBoundsException;
 using ::com::sun::star::uno::RuntimeException;
-//-----IAccessibility2 Implementation 2009
 using ::com::sun::star::uno::Reference;
 using ::rtl::OUString;
-//IAccessibility2 Implementation 2009-----
 #include <algorithm>
 
 // #include <Accessiblehyperlink.hxx>
-//-----IAccessibility2 Implementation 2009
 namespace accessibility {
 
 namespace {
@@ -128,9 +120,7 @@
 AccessibleShape::AccessibleShape (
     const AccessibleShapeInfo& rShapeInfo,
     const AccessibleShapeTreeInfo& rShapeTreeInfo)
-    //IAccessibility2 Implementation 2009-----
     : AccessibleContextBase (rShapeInfo.mxParent,AccessibleRole::SHAPE),
-    //-----IAccessibility2 Implementation 2009
       mpChildrenManager(NULL),
       mxShape (rShapeInfo.mxShape),
       maShapeTreeInfo (rShapeTreeInfo),
@@ -142,7 +132,6 @@
 	m_pShape = GetSdrObjectFromXShape(mxShape);
     UpdateNameAndDescription();
 }
-//IAccessibility2 Implementation 2009-----
 AccessibleShape::AccessibleShape (
         const ::com::sun::star::uno::Reference<
             ::com::sun::star::drawing::XShape>& rxShape,
@@ -161,7 +150,6 @@
 {
 	m_pShape = GetSdrObjectFromXShape(mxShape);
 }
-//-----IAccessibility2 Implementation 2009
 AccessibleShape::~AccessibleShape (void)
 {
     if (mpChildrenManager != NULL)
@@ -297,13 +285,11 @@
     else
         pStateSet->RemoveState (AccessibleStateType::SELECTED);
 }
-//IAccessibility2 Implementation 2009-----
     ::rtl::OUString AccessibleShape::GetStyle()
     {
 	    return ShapeTypeHandler::CreateAccessibleBaseName( mxShape );
     }
 
-//-----IAccessibility2 Implementation 2009
 bool AccessibleShape::operator== (const AccessibleShape& rShape)
 {
     return this==&rShape;
@@ -365,7 +351,6 @@
     else
         return AccessibleContextBase::GetState (aState);
 }
-//IAccessibility2 Implementation 2009-----
 // Solution: OverWrite the parent's getAccessibleName method
 ::rtl::OUString SAL_CALL AccessibleShape::getAccessibleName (void)
     throw (::com::sun::star::uno::RuntimeException)
@@ -386,7 +371,6 @@
 	else
 		return OUString( RTL_CONSTASCII_USTRINGPARAM( " " ));
 }
-//-----IAccessibility2 Implementation 2009
 //=====  XAccessibleContext  ==================================================
 
 /** The children of this shape come from two sources: The children from
@@ -446,45 +430,34 @@
     return xChild;
 }
 
-//IAccessibility2 Implementation 2009-----
 uno::Reference<XAccessibleRelationSet> SAL_CALL
-	AccessibleShape::getAccessibleRelationSet (void)
+    AccessibleShape::getAccessibleRelationSet (void)
         throw (::com::sun::star::uno::RuntimeException)
 {
-	::osl::MutexGuard aGuard (maMutex);
-    ::utl::AccessibleRelationSetHelper* pRelationSet =
-		new utl::AccessibleRelationSetHelper;
-	SdrObject* pCaptionSdr = const_cast < SdrObject* > ( m_pShape->GetCaptionObj() )  ;
-	if(pCaptionSdr!=NULL)
-	{
-			uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
-			uno::Reference<drawing::XShape> xCaptionShape ( pCaptionSdr->getUnoShape(),uno::UNO_QUERY);
-			if(xCaptionShape.is())
-			{
-				aSequence[0] = mpParent->GetAccessibleCaption(xCaptionShape);
-				pRelationSet->AddRelation( AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) );
-		}
-	}
-	else
-	{
-		//this mxshape is the captioned shape, only for sw
-		if(mpParent->GetAccessibleCaption(mxShape).get())
-		{
-			uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
-			aSequence[0] = mpParent->GetAccessibleCaption(mxShape);
-			pRelationSet->AddRelation( AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) );
-		}
-	}
-   if (pRelationSet != NULL)
+    ::osl::MutexGuard aGuard (maMutex);
+    ::utl::AccessibleRelationSetHelper* pRelationSet = new utl::AccessibleRelationSetHelper;
+    uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
+    aSequence[0] = mpParent->GetAccessibleCaption(mxShape);
+
+    //this mxshape is the captioned shape, only for sw
+    if(aSequence[0].get())
+    {
+        pRelationSet->AddRelation( 
+            AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) );
+    }
+
+    if (pRelationSet != NULL)
     {
         return uno::Reference<XAccessibleRelationSet> (
             new ::utl::AccessibleRelationSetHelper (*pRelationSet));
     }
     else
+    {
         return uno::Reference<XAccessibleRelationSet>(NULL);
-	return uno::Reference<XAccessibleRelationSet>();
+    }
+
+    return uno::Reference<XAccessibleRelationSet>();
 }
-//-----IAccessibility2 Implementation 2009
 
 /**	Return a copy of the state set.
     Possible states are:
@@ -501,8 +474,6 @@
 
 	if (rBHelper.bDisposed || mpText == NULL)
         // Return a minimal state set that only contains the DEFUNC state.
-	//IAccessibility2 Implementation 2009-----
-	//xStateSet = AccessibleContextBase::getAccessibleStateSet ();
 	{
         xStateSet = AccessibleContextBase::getAccessibleStateSet ();
 		::utl::AccessibleStateSetHelper* pStateSet = 
@@ -534,7 +505,6 @@
 		    }
 			xStateSet = Reference<XAccessibleStateSet>(
                 new ::utl::AccessibleStateSetHelper (*pStateSet));
-			//-----IAccessibility2 Implementation 2009
     }else
     {
         ::utl::AccessibleStateSetHelper* pStateSet =
@@ -550,7 +520,6 @@
                 else
                     pStateSet->RemoveState (AccessibleStateType::FOCUSED);
             }
-			//IAccessibility2 Implementation 2009-----
 			//Solution:Just when the document is not read-only,set states EDITABLE,RESIZABLE,MOVEABLE
 		    ::com::sun::star::uno::Reference<XAccessible> xTempAcc = getAccessibleParent();
 		    if( xTempAcc.is() )
@@ -577,16 +546,13 @@
 					}
 				}
 		    }
-			//-----IAccessibility2 Implementation 2009
             // Create a copy of the state set that may be modified by the
             // caller without affecting the current state set.
             xStateSet = Reference<XAccessibleStateSet>(
                 new ::utl::AccessibleStateSetHelper (*pStateSet));
         }
     }
-//IAccessibility2 Implementation 2009-----
 	UpdateDocumentAllSelState(xStateSet);
-//-----IAccessibility2 Implementation 2009
     return xStateSet;
 }
 
@@ -864,7 +830,6 @@
             uno::Any aColor;
             aColor = aSet->getPropertyValue (OUString::createFromAscii ("FillColor"));
             aColor >>= nColor;
-			//IAccessibility2 Implementation 2009-----
 			aColor = aSet->getPropertyValue (OUString::createFromAscii ("FillTransparence"));
 			short nTrans=0;
 			aColor >>= nTrans;
@@ -879,7 +844,6 @@
 				crBk.SetTransparency(sal_uInt8(nTrans));
 			}
 			nColor = crBk.GetColor();
-			//-----IAccessibility2 Implementation 2009
         }
     }
     catch (::com::sun::star::beans::UnknownPropertyException)
@@ -938,18 +902,14 @@
         aReturn = ::cppu::queryInterface (rType,
             static_cast<XAccessibleComponent*>(this),
             static_cast<XAccessibleExtendedComponent*>(this),
-	    //IAccessibility2 Implementation 2009-----
             static_cast< ::com::sun::star::accessibility::XAccessibleSelection* >(this),
 
 	     static_cast< ::com::sun::star::accessibility::XAccessibleExtendedAttributes* >(this),
-	     //-----IAccessibility2 Implementation 2009
             static_cast<lang::XEventListener*>(this),
             static_cast<document::XEventListener*>(this),
             static_cast<lang::XUnoTunnel*>(this),
-	//IAccessibility2 Implementation 2009-----
             static_cast<XAccessibleGroupPosition*>(this),
             static_cast<XAccessibleHypertext*>(this)
-	//-----IAccessibility2 Implementation 2009
             );
     return aReturn;
 }
@@ -973,7 +933,6 @@
 {
     AccessibleContextBase::release ();
 }
-//IAccessibility2 Implementation 2009-----
 //
 //=====  XAccessibleSelection  ============================================
 //
@@ -1093,7 +1052,6 @@
 	strRet <<= style;
 	return strRet;
 }
-//-----IAccessibility2 Implementation 2009
 //=====  XServiceInfo  ========================================================
 
 ::rtl::OUString SAL_CALL
@@ -1328,7 +1286,6 @@
     throw (::com::sun::star::uno::RuntimeException)
 {
     //OUString sName (CreateAccessibleBaseName());
-//IAccessibility2 Implementation 2009-----
 	OUString sName;
 	sName = GetFullAccessibleName(this);
 	return sName;
@@ -1423,7 +1380,6 @@
     aAccName = sName;
 	return sName;    
 }
-//-----IAccessibility2 Implementation 2009
 ::rtl::OUString
     AccessibleShape::CreateAccessibleDescription (void)
     throw (::com::sun::star::uno::RuntimeException)
@@ -1595,7 +1551,6 @@
     {
     }
 }
-//IAccessibility2 Implementation 2009-----
 //	Return this object's role.
 sal_Int16 SAL_CALL AccessibleShape::getAccessibleRole (void)
         throw (::com::sun::star::uno::RuntimeException)
@@ -1712,10 +1667,8 @@
         for(sal_Int32 i = 0 ; i < nObj ; ++i)
         {
             SdrObject *pSubObj = pGrpList->GetObj(i);
-			//IAccessibility2 Implementation 2009-----
             if (pSubObj && 
 				xParentContext->getAccessibleChild(i)->getAccessibleContext()->getAccessibleRole() != AccessibleRole::GROUP_BOX)
-			//-----IAccessibility2 Implementation 2009
             {
 				vXShapes.push_back( GetXShapeForSdrObject(pSubObj) );
             }
@@ -1840,5 +1793,4 @@
 }
 sal_Bool SAL_CALL AccessibleShape::copyText( sal_Int32, sal_Int32 ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException){return sal_True;}
 
-//-----IAccessibility2 Implementation 2009
 } // end of namespace accessibility
diff --git a/main/svx/source/accessibility/AccessibleTextHelper.cxx b/main/svx/source/accessibility/AccessibleTextHelper.cxx
index f7af8c3..4e109c2 100644
--- a/main/svx/source/accessibility/AccessibleTextHelper.cxx
+++ b/main/svx/source/accessibility/AccessibleTextHelper.cxx
@@ -50,7 +50,6 @@
 #include <unotools/accessiblestatesethelper.hxx>
 #include <vcl/unohelp.hxx>
 #include <vcl/svapp.hxx>
-//IAccessibility2 Implementation 2009-----
 //add TEXT_SELECTION_CHANGED event
 #ifndef _TEXTDATA_HXX
 #include <svtools/textdata.hxx>
@@ -58,7 +57,6 @@
 
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/viewsh.hxx>
-//-----IAccessibility2 Implementation 2009
 //------------------------------------------------------------------------
 //
 // Project-local header
@@ -76,10 +74,8 @@
 #include "editeng/AccessibleEditableTextPara.hxx"
 #include <svx/svdmodel.hxx>
 #include <svx/svdpntv.hxx>
-//IAccessibility2 Implementation 2009-----
 #include "../table/cell.hxx"
 #include "../table/accessiblecell.hxx"
-//-----IAccessibility2 Implementation 2009
 #include <editeng/editdata.hxx>
 #include <editeng/editeng.hxx>
 #include <editeng/editview.hxx>
@@ -89,7 +85,6 @@
 
 namespace accessibility
 {
-//IAccessibility2 Implementation 2009-----
 	Window* GetCurrentEditorWnd()
 	{
 		Window* pWin = NULL;
@@ -104,7 +99,6 @@
 		}
 		return pWin;
 	}
-//-----IAccessibility2 Implementation 2009
 
 //------------------------------------------------------------------------
 //
@@ -512,7 +506,6 @@
         {
             if( bHaveFocus )
             {
-				//IAccessibility2 Implementation 2009-----
 				if( mxFrontEnd.is() )
 				{
 					AccessibleCell* pAccessibleCell = dynamic_cast< AccessibleCell* > ( mxFrontEnd.get() );
@@ -525,7 +518,6 @@
 							pAccTable->SetStateDirectly(AccessibleStateType::FOCUSED);
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
                 DBG_TRACE("AccessibleTextHelper_Impl::SetShapeFocus(): Parent object received focus" );
             }
             else
@@ -597,7 +589,6 @@
             if( !pViewForwarder )
                 return sal_False;
 
-			//IAccessibility2 Implementation 2009-----
 			if( mxFrontEnd.is() )
 			{
 				AccessibleCell* pAccessibleCell = dynamic_cast< AccessibleCell* > ( mxFrontEnd.get() );
@@ -608,7 +599,6 @@
 						return xCell->IsTextEditActive();
 				}
 			}
-			//-----IAccessibility2 Implementation 2009
             if( pViewForwarder->IsValid() )
                 return sal_True;
             else
@@ -927,12 +917,7 @@
 
                 // convert to screen coordinates
                 aParaBB = ::accessibility::AccessibleEditableTextPara::LogicToPixel( aTmpBB, rCacheTF.GetMapMode(), rCacheVF );
-		//IAccessibility2 Implementation 2009-----
-				/*
-                if( aParaBB.IsOver( aViewArea ) )
-                {
-                */
-				//-----IAccessibility2 Implementation 2009
+
                     // at least partially visible
                     if( bFirstChild )
                     {
@@ -953,23 +938,6 @@
                                                                                    mxFrontEnd, GetEditSource(), nCurrPara ).first ),
                                           AccessibleEventId::CHILD );
                     }
-		    //IAccessibility2 Implementation 2009-----
-				/*
-                }
-                else
-                {
-                    // not or no longer visible
-                    if( maParaManager.IsReferencable( nCurrPara ) )
-                    {
-                        if( bBroadcastEvents )
-                            LostPropertyEvent( uno::makeAny( maParaManager.GetChild( nCurrPara ).first.get().getRef() ),
-                                               AccessibleEventId::CHILD );
-
-                        // clear reference
-                        maParaManager.Release( nCurrPara );
-                    }
-                }*/
-				//-----IAccessibility2 Implementation 2009
             }
         }
         catch( const uno::Exception& )
@@ -1448,12 +1416,10 @@
                         {
                             case HINT_BEGEDIT:
                             {
-			    //IAccessibility2 Implementation 2009-----
 								if(!IsActive())
 								{
 									break;
 								}
-//-----IAccessibility2 Implementation 2009
                                 // change children state
                                 maParaManager.SetActive();
 
diff --git a/main/svx/source/accessibility/ChildrenManager.cxx b/main/svx/source/accessibility/ChildrenManager.cxx
index 1aba1e6..ffb4cc5 100644
--- a/main/svx/source/accessibility/ChildrenManager.cxx
+++ b/main/svx/source/accessibility/ChildrenManager.cxx
@@ -86,7 +86,6 @@
     return mpImpl->GetChild (nIndex);
 }
 
-//IAccessibility2 Implementation 2009-----
 Reference<XAccessible> ChildrenManager::GetChild (const Reference<drawing::XShape>& xShape)
     throw (::com::sun::star::uno::RuntimeException)
 {
@@ -101,7 +100,6 @@
 	OSL_ASSERT (mpImpl != NULL);
     return mpImpl->GetChildShape(nIndex);
 }
-//-----IAccessibility2 Implementation 2009
 
 
 void ChildrenManager::Update (bool bCreateNewObjectsOnDemand)
diff --git a/main/svx/source/accessibility/ChildrenManagerImpl.cxx b/main/svx/source/accessibility/ChildrenManagerImpl.cxx
index 4359f25..af8bb79 100644
--- a/main/svx/source/accessibility/ChildrenManagerImpl.cxx
+++ b/main/svx/source/accessibility/ChildrenManagerImpl.cxx
@@ -37,7 +37,6 @@
 
 #include <rtl/ustring.hxx>
 #include <tools/debug.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _SVX_ACCESSIBILITY_SVX_SHAPE_TYPES_HXX
 #include <svx/SvxShapeTypes.hxx>
 #endif
@@ -48,7 +47,6 @@
 #ifndef _SV_WINDOW_HXX
 #include <vcl/window.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 using namespace	::com::sun::star::accessibility;
 using ::com::sun::star::uno::Reference;
@@ -128,7 +126,6 @@
 }
 
 
-//IAccessibility2 Implementation 2009-----
 ::com::sun::star::uno::Reference<
         ::com::sun::star::drawing::XShape> ChildrenManagerImpl::GetChildShape(long nIndex)
     throw (::com::sun::star::uno::RuntimeException)
@@ -142,7 +139,6 @@
     }
 	return uno::Reference< drawing::XShape > ();
 }
-//-----IAccessibility2 Implementation 2009
 
 /** Return the requested accessible child object.  Create it if it is not
     yet in the cache.
@@ -155,8 +151,8 @@
     // Check wether the given index is valid.
     if (nIndex < 0 || (unsigned long)nIndex >= maVisibleChildren.size())
         throw lang::IndexOutOfBoundsException (
-            ::rtl::OUString::createFromAscii(
-				"no accessible child with index ") + nIndex,
+            ::rtl::OUString::createFromAscii( "no accessible child with index ")
+                + ::rtl::OUString::valueOf( nIndex, 10),
             mxParent);
 
     return GetChild (maVisibleChildren[nIndex],nIndex);
@@ -896,7 +892,6 @@
 
     return bResult;
 }
-//IAccessibility2 Implementation 2009-----
 // Add the impl method for IAccessibleParent interface
 AccessibleControlShape * ChildrenManagerImpl::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException)
 {
@@ -925,7 +920,6 @@
     }
     return uno::Reference<XAccessible> ();
 }
-//-----IAccessibility2 Implementation 2009
 
 /** Update the <const>SELECTED</const> and the <const>FOCUSED</const> state
     of all visible children.  Maybe this should be changed to all children.
@@ -958,21 +952,18 @@
     // Remember the current and new focused shape.
     AccessibleShape* pCurrentlyFocusedShape = NULL;
     AccessibleShape* pNewFocusedShape = NULL;
-//IAccessibility2 Implementation 2009-----
 	typedef std::pair< AccessibleShape* , sal_Bool > PAIR_SHAPE;//sal_Bool Selected,UnSelected.
 	typedef std::vector< PAIR_SHAPE > VEC_SHAPE;
 	VEC_SHAPE vecSelect;
 	int nAddSelect=0;
 	int nRemoveSelect=0;
 	sal_Bool bHasSelectedShape=sal_False;
-//-----IAccessibility2 Implementation 2009
     ChildDescriptorListType::iterator I, aEnd = maVisibleChildren.end();
     for (I=maVisibleChildren.begin(); I != aEnd; ++I)
     {
         AccessibleShape* pAccessibleShape = I->GetAccessibleShape();
         if (I->mxAccessibleShape.is() && I->mxShape.is() && pAccessibleShape!=NULL)
         {
-	//IAccessibility2 Implementation 2009-----
 			short nRole = pAccessibleShape->getAccessibleRole();
 			bool bDrawShape = (
 				nRole == AccessibleRole::GRAPHIC || 
@@ -981,7 +972,6 @@
 				nRole == AccessibleRole::IMAGE_MAP || 
 				nRole == AccessibleRole::TABLE_CELL || 
 				nRole == AccessibleRole::TABLE );
-//-----IAccessibility2 Implementation 2009
             bool bShapeIsSelected = false;
 
             // Look up the shape in the (single or multi-) selection.
@@ -1008,8 +998,6 @@
 
             // Set or reset the SELECTED state.
             if (bShapeIsSelected)
-	    //IAccessibility2 Implementation 2009-----
-                //pAccessibleShape->SetState (AccessibleStateType::SELECTED);
 			{
 				if (pAccessibleShape->SetState (AccessibleStateType::SELECTED))
 				{
@@ -1025,7 +1013,6 @@
 				}
 			}
             else
-                //pAccessibleShape->ResetState (AccessibleStateType::SELECTED);
 			{
                 if(pAccessibleShape->ResetState (AccessibleStateType::SELECTED))
 				{
@@ -1036,13 +1023,11 @@
 					}
 				}
 			}
-//-----IAccessibility2 Implementation 2009
             // Does the shape have the current selection?
             if (pAccessibleShape->GetState (AccessibleStateType::FOCUSED))
                 pCurrentlyFocusedShape = pAccessibleShape;
         }
     }
-//IAccessibility2 Implementation 2009-----
     /*
     // Check if the frame we are in is currently active.  If not then make
     // sure to not send a FOCUSED state change.
@@ -1062,19 +1047,14 @@
 	{
 		bShapeActive =true;
 	}
-//-----IAccessibility2 Implementation 2009
     // Move focus from current to newly focused shape.
     if (pCurrentlyFocusedShape != pNewFocusedShape)
     {
         if (pCurrentlyFocusedShape != NULL)
             pCurrentlyFocusedShape->ResetState (AccessibleStateType::FOCUSED);
-	    //IAccessibility2 Implementation 2009-----
-        //if (pNewFocusedShape != NULL)
-	//-----IAccessibility2 Implementation 2009
 	if (pNewFocusedShape != NULL && bShapeActive)
             pNewFocusedShape->SetState (AccessibleStateType::FOCUSED);
 	}
-//IAccessibility2 Implementation 2009-----
 
 	if (nAddSelect >= 10 )//fire selection  within 
 	{
@@ -1119,7 +1099,6 @@
 			mrContext.CommitChange(AccessibleEventId::SELECTION_CHANGED_REMOVE,anyShape,uno::Any());
 		}
 	}
-//-----IAccessibility2 Implementation 2009
 
     // Remember whether there is a shape that now has the focus.
     mpFocusedShape = pNewFocusedShape;
diff --git a/main/svx/source/accessibility/ChildrenManagerImpl.hxx b/main/svx/source/accessibility/ChildrenManagerImpl.hxx
index 9af96cd..513ee0a 100644
--- a/main/svx/source/accessibility/ChildrenManagerImpl.hxx
+++ b/main/svx/source/accessibility/ChildrenManagerImpl.hxx
@@ -126,11 +126,9 @@
     */
     long GetChildCount (void) const throw ();
 
-//IAccessibility2 Implementation 2009-----
 	::com::sun::star::uno::Reference<
         ::com::sun::star::drawing::XShape> GetChildShape(long nIndex)
 		throw (::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
     /**	Return the requested accessible child or throw and
         IndexOutOfBoundsException if the given index is invalid.
         @param nIndex
@@ -303,7 +301,6 @@
 		const long _nIndex,
 		const AccessibleShapeTreeInfo& _rShapeTreeInfo
 	)	throw (::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
     // Add the impl method for IAccessibleParent interface
     virtual AccessibleControlShape* GetAccControlShapeFromModel
 		(::com::sun::star::beans::XPropertySet* pSet) 
@@ -313,7 +310,6 @@
         GetAccessibleCaption (const ::com::sun::star::uno::Reference<
             ::com::sun::star::drawing::XShape>& xShape)
         throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 protected:
     /** This list holds the descriptors of all currently visible shapes and
         associated accessible object.
diff --git a/main/svx/source/accessibility/ShapeTypeHandler.cxx b/main/svx/source/accessibility/ShapeTypeHandler.cxx
index c78c88b..07ef13a 100644
--- a/main/svx/source/accessibility/ShapeTypeHandler.cxx
+++ b/main/svx/source/accessibility/ShapeTypeHandler.cxx
@@ -32,11 +32,9 @@
 #include <vcl/svapp.hxx>
 #include <svx/dialmgr.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <svx/unoshape.hxx>
 #include <svx/svdoashp.hxx>
 #include "svx/unoapi.hxx"
-//-----IAccessibility2 Implementation 2009
 
 #include "svx/svdstr.hrc"
 
@@ -315,7 +313,6 @@
         case DRAWING_RECTANGLE:
             nResourceId = STR_ObjNameSingulRECT;
             break;
-		//IAccessibility2 Implementation 2009-----
         case DRAWING_CUSTOM:
 			{
 				nResourceId = STR_ObjNameSingulCUSTOMSHAPE;
@@ -345,7 +342,6 @@
 				}
                 break;
 			}
-		//-----IAccessibility2 Implementation 2009
         case DRAWING_TEXT:
             nResourceId = STR_ObjNameSingulTEXT;
             break;
diff --git a/main/svx/source/accessibility/charmapacc.cxx b/main/svx/source/accessibility/charmapacc.cxx
index 36dc601..4b6ff92 100644
--- a/main/svx/source/accessibility/charmapacc.cxx
+++ b/main/svx/source/accessibility/charmapacc.cxx
@@ -166,25 +166,6 @@
 // -----------------------------------------------------------------------------
 ::com::sun::star::awt::Rectangle SAL_CALL SvxShowCharSetVirtualAcc::implGetBounds(  ) throw (RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
-/*	const Point   aOutPos( mpParent->GetPosPixel() );
-    Size          aOutSize( mpParent->GetOutputSizePixel() );
-	if ( mpParent->getScrollBar()->IsVisible() )
-	{
-		const Size aScrollBar = mpParent->getScrollBar()->GetOutputSizePixel();
-		aOutSize.Width() -= aScrollBar.Width();
-		aOutSize.Height() -= aScrollBar.Height();
-	}
-
-    awt::Rectangle aRet;
-
-    aRet.X = aOutPos.X();
-    aRet.Y = aOutPos.Y();
-    aRet.Width = aOutSize.Width();
-    aRet.Height = aOutSize.Height();
-
-    return aRet;
-*/ 
 	::com::sun::star::awt::Rectangle aBounds ( 0, 0, 0, 0 );
 	Window* pWindow = mpParent;
 	if ( pWindow )
@@ -201,7 +182,6 @@
 		}
 	}
 	return aBounds;
-	//-----IAccessibility2 Implementation 2009
 }
 // -----------------------------------------------------------------------------
 sal_Int16 SAL_CALL SvxShowCharSetVirtualAcc::getAccessibleRole(  ) throw (RuntimeException)
@@ -365,7 +345,6 @@
 // -----------------------------------------------------------------------------
 ::com::sun::star::awt::Rectangle SAL_CALL SvxShowCharSetAcc::implGetBounds(  ) throw (RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 	const Point   aOutPos;//( m_pParent->getCharSetControl()->GetPosPixel() ); 
     Size          aOutSize( m_pParent->getCharSetControl()->GetOutputSizePixel());
 	if ( m_pParent->getCharSetControl()->getScrollBar()->IsVisible() )
@@ -373,7 +352,6 @@
 		const Size aScrollBar = m_pParent->getCharSetControl()->getScrollBar()->GetOutputSizePixel();
 		aOutSize.Width() -= aScrollBar.Width();
 		//aOutSize.Height() -= aScrollBar.Height(); 
-		//-----IAccessibility2 Implementation 2009
 	}
 
     awt::Rectangle aRet;
@@ -715,10 +693,7 @@
 sal_Int16 SAL_CALL SvxShowCharSetItemAcc::getAccessibleRole()
     throw (uno::RuntimeException)
 {
-    //return accessibility::AccessibleRole::LABEL;
-//IAccessibility2 Implementation 2009-----
     return accessibility::AccessibleRole::TABLE_CELL;
-//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------------
@@ -733,30 +708,17 @@
 	sal_Unicode c = mpParent->maText.GetChar(0);
 	char buf[16] = "0x0000";
     sal_Unicode c_Shifted = c;
-//IAccessibility2 Implementation 2009-----
-/*
-    for( int i = 0; i < 4; ++i )
-    {
-        char h = (char)(c_Shifted & 0x0F);
-        buf[5-i] = (h > 9) ? (h - 10 + 'A') : (h + '0');
-        c_Shifted >>= 4;
-    }
-*/
 	int tmp_len = 4;
 	if(c_Shifted>0xFFFF) tmp_len = 8;
     for( int i = 0; i < tmp_len; ++i )
     {
         char h = c_Shifted & 0x0F;
-        //buf[9-i] = (h > 9) ? (h - 10 + 'A') : (h + '0');
 		buf[tmp_len+1-i] = (h > 9) ? (h - 10 + 'A') : (h + '0');
         c_Shifted >>= 4;
     }
-//-----IAccessibility2 Implementation 2009
     if( c < 256 )
         snprintf( buf+6, 10, " (%d)", c );
-	//IAccessibility2 Implementation 2009-----
 	sDescription.AppendAscii(" ");
-	//-----IAccessibility2 Implementation 2009
 	sDescription.AppendAscii(buf);
 
     return sDescription;
@@ -802,7 +764,6 @@
 
     if( mpParent )
     {
-    //IAccessibility2 Implementation 2009-----
 		if(mpParent->mrParent.IsEnabled())
 		{
 			pStateSet->AddState( accessibility::AccessibleStateType::ENABLED );
@@ -810,7 +771,6 @@
 			pStateSet->AddState( accessibility::AccessibleStateType::SELECTABLE );
 			pStateSet->AddState( accessibility::AccessibleStateType::FOCUSABLE );
 		}
-		//-----IAccessibility2 Implementation 2009
 
 	    // SELECTED
         if( mpParent->mrParent.GetSelectIndexId() == mpParent->mnId )
@@ -819,12 +779,10 @@
        	    pStateSet->AddState( accessibility::AccessibleStateType::FOCUSED );
         }
 		if ( mpParent->mnId >= mpParent->mrParent.FirstInView() && mpParent->mnId <= mpParent->mrParent.LastInView() )
-		//IAccessibility2 Implementation 2009-----
 		{
 			pStateSet->AddState( AccessibleStateType::VISIBLE );
 			pStateSet->AddState( AccessibleStateType::SHOWING );
 		}
-		//-----IAccessibility2 Implementation 2009
 		pStateSet->AddState( AccessibleStateType::TRANSIENT );
     }
 
diff --git a/main/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx b/main/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
index 93fb30f..88818bf 100644
--- a/main/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
+++ b/main/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
@@ -1123,9 +1123,7 @@
 			{
 				pStateSetHelper->AddState( AccessibleStateType::SELECTED );
 			}
-			//IAccessibility2 Implementation 2009-----
 			if (mrParentWindow->GetBitmapPixel(sal_uInt16(mnIndexInParent)))
-			//-----IAccessibility2 Implementation 2009
 			{
 				pStateSetHelper->AddState( AccessibleStateType::CHECKED );
 			}
diff --git a/main/svx/source/accessibility/svxrectctaccessiblecontext.cxx b/main/svx/source/accessibility/svxrectctaccessiblecontext.cxx
index 1ccbe71..349898b 100644
--- a/main/svx/source/accessibility/svxrectctaccessiblecontext.cxx
+++ b/main/svx/source/accessibility/svxrectctaccessiblecontext.cxx
@@ -46,14 +46,12 @@
 #include <svx/dlgctrl.hxx>
 #include <svx/dialmgr.hxx>
 #include <comphelper/accessibleeventnotifier.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLERELATIONTYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
 #endif
 #ifndef _UTL_ACCESSIBLERELATIONSETHELPER_HXX_
 #include <unotools/accessiblerelationsethelper.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::cppu;
 using namespace ::osl;
@@ -61,9 +59,7 @@
 using namespace	::com::sun::star::uno;
 using namespace	::com::sun::star::accessibility;
 
-//IAccessibility2 Implementation 2009-----
 using namespace ::com::sun::star::lang;
-//-----IAccessibility2 Implementation 2009
 
 #define MAX_NUM_OF_CHILDS	9
 #define NOCHILDSELECTED		-1
@@ -364,19 +360,14 @@
 
 sal_Int16 SAL_CALL SvxRectCtlAccessibleContext::getAccessibleRole( void ) throw( RuntimeException )
 {
-//IAccessibility2 Implementation 2009-----
 	//return AccessibleRole::GROUP_BOX;
 	return AccessibleRole::PANEL;
-//-----IAccessibility2 Implementation 2009
 }
 
 ::rtl::OUString SAL_CALL SvxRectCtlAccessibleContext::getAccessibleDescription( void ) throw( RuntimeException )
 {
 	::osl::MutexGuard	aGuard( m_aMutex );
-	//IAccessibility2 Implementation 2009-----
-	//return msDescription;
 	return msDescription +::rtl::OUString::createFromAscii(" Please use arrow key to selection.");
-	//-----IAccessibility2 Implementation 2009
 }
 
 ::rtl::OUString SAL_CALL SvxRectCtlAccessibleContext::getAccessibleName( void ) throw( RuntimeException )
@@ -390,8 +381,6 @@
 */
 Reference< XAccessibleRelationSet > SAL_CALL SvxRectCtlAccessibleContext::getAccessibleRelationSet( void ) throw( RuntimeException )
 {
-//IAccessibility2 Implementation 2009-----
-	//return Reference< XAccessibleRelationSet >();
 	utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
 	uno::Reference< accessibility::XAccessibleRelationSet > xSet = pRelationSetHelper;
 	Window* pWindow = mpRepr;
@@ -414,16 +403,13 @@
 		}
 	}
 	return xSet;
-	//-----IAccessibility2 Implementation 2009
 }
-//IAccessibility2 Implementation 2009-----
 //Solution:Add the event handling method
 void SvxRectCtlAccessibleContext::FireAccessibleEvent (short nEventId, const ::com::sun::star::uno::Any& rOld, const ::com::sun::star::uno::Any& rNew)
 {
 	const Reference< XInterface >	xSource( *this );
 	CommitChange( AccessibleEventObject( xSource, nEventId, rNew,rOld ) );
 }
-//-----IAccessibility2 Implementation 2009	
 Reference< XAccessibleStateSet > SAL_CALL SvxRectCtlAccessibleContext::getAccessibleStateSet( void ) throw( RuntimeException )
 {
 	::osl::MutexGuard						aGuard( m_aMutex );
@@ -431,10 +417,8 @@
 
 	if( IsAlive() )
 	{
-//IAccessibility2 Implementation 2009-----
 		pStateSetHelper->AddState( AccessibleStateType::ENABLED );
         // pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
-//-----IAccessibility2 Implementation 2009
 		pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
 		if( mpRepr->HasFocus() )
 			pStateSetHelper->AddState( AccessibleStateType::FOCUSED );
@@ -683,7 +667,6 @@
 		// in our case only for the first (0) _selected_ child this is a valid request
 		throw lang::IndexOutOfBoundsException();
 }
-// IAccessibility2 implementation 2009.  ------
 void SvxRectCtlAccessibleContext::FireChildFocus( RECT_POINT eButton )
 {
 	::osl::MutexGuard	aGuard( m_aMutex );
@@ -750,7 +733,6 @@
 	// no guard -> is done in next selectChild
 	selectChild( PointToIndex( eButton, mbAngleMode ) , bFireFocus);
 }
-// ------ IAccessibility2 implementation 2009.
 void SvxRectCtlAccessibleContext::setName( const ::rtl::OUString& rName )
 {
 	Any						aPreVal, aPostVal;
@@ -1056,7 +1038,6 @@
 Reference<XAccessibleRelationSet> SAL_CALL SvxRectCtlChildAccessibleContext::getAccessibleRelationSet( void ) throw( RuntimeException )
 {
 	//return Reference< XAccessibleRelationSet >();
-	//IAccessibility2 Implementation 2009-----
 	utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
 	uno::Reference< accessibility::XAccessibleRelationSet > xSet = pRelationSetHelper;	
 	if( mxParent.is() )
@@ -1068,7 +1049,6 @@
 	}
 	
 	return xSet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 Reference< XAccessibleStateSet > SAL_CALL SvxRectCtlChildAccessibleContext::getAccessibleStateSet( void ) throw( RuntimeException )
@@ -1177,7 +1157,6 @@
 	return aRet;
 }
 
-//IAccessibility2 Implementation 2009-----
 // -----------------------------------------------------------------------------
 // XAccessibleAction
 // -----------------------------------------------------------------------------
@@ -1228,7 +1207,6 @@
     return Reference< XAccessibleKeyBinding >();
 }
 
-//-----IAccessibility2 Implementation 2009
 
 //=====  XServiceInfo  ========================================================
 
@@ -1326,7 +1304,6 @@
 
 	return *mpBoundingBox;
 }
-// IAccessibility2 implementation 2009. ------
 void SvxRectCtlChildAccessibleContext::setStateChecked( sal_Bool bChecked, sal_Bool bFireFocus )
 {
 	if( mbIsChecked != bChecked )
@@ -1358,4 +1335,3 @@
 	aNew <<= AccessibleStateType::FOCUSED;
 	CommitChange( AccessibleEventObject( xSource, AccessibleEventId::STATE_CHANGED, aNew, aOld ) );
 }
-// ------ IAccessibility2 implementation 2009.
diff --git a/main/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx b/main/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
index 0eda3df..165d8a6 100644
--- a/main/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
+++ b/main/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
@@ -314,7 +314,6 @@
 		? rtl::OUString::createFromAscii( pNameTypeTableArray[ eShapeType ].pS )
 		: rtl::OUString();
 }
-//IAccessibility2 Implementation 2009-----
 typedef std::hash_map< const char*, const char*, std::hash<const char*>, TCheck> TypeACCNameHashMap;
 static TypeACCNameHashMap* pACCHashMap = NULL;
 struct ACCNameTypeTable
@@ -560,4 +559,3 @@
 		sRetValue = rtl::OUString::createFromAscii( (*aHashIter).second );
 	return sRetValue;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svx/source/dialog/_bmpmask.cxx b/main/svx/source/dialog/_bmpmask.cxx
index d437724..1ed6ec7 100644
--- a/main/svx/source/dialog/_bmpmask.cxx
+++ b/main/svx/source/dialog/_bmpmask.cxx
@@ -137,9 +137,7 @@
 
 void MaskSet::GetFocus()
 {
-	//IAccessibility2 Implementation 2009-----
 	ValueSet::GetFocus();
-	//-----IAccessibility2 Implementation 2009
 	SelectItem( 1 );
 	pSvxBmpMask->onSelect( this );
 }
@@ -330,13 +328,11 @@
 
 IMPL_LINK( MaskData, FocusLbHdl, ColorLB*, pLb )
 {
-	//IAccessibility2 Implementation 2009-----
 	// MT: bFireFox as API parameter is ugly, find better solution????
 	pMask->pQSet1->SelectItem( pLb == &( pMask->aLbColor1 ) ? 1 : 0 /* , false */ );
 	pMask->pQSet2->SelectItem( pLb == &( pMask->aLbColor2 ) ? 1 : 0 /* , false */ );
 	pMask->pQSet3->SelectItem( pLb == &( pMask->aLbColor3 ) ? 1 : 0 /* , false */ );
 	pMask->pQSet4->SelectItem( pLb == &( pMask->aLbColor4 ) ? 1 : 0 /* , false */ );
-	//-----IAccessibility2 Implementation 2009
 
 	return 0;
 }
@@ -483,57 +479,48 @@
 	pQSet1->SetColCount( 1 );
 	pQSet1->SetLineCount( 1 );
 //	pQSet1->SetExtraSpacing( 1 );
-	//-----IAccessibility2 Implementation 2009
 	String sColorPalette (BMP_RESID( RID_SVXDLG_BMPMASK_STR_PALETTE));
     String sColorPaletteN;
     sColorPaletteN = sColorPalette;
     sColorPaletteN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 1"));
 	//pQSet1->InsertItem( 1, aPipetteColor );
 	pQSet1->InsertItem( 1, aPipetteColor, sColorPaletteN);
-	//IAccessibility2 Implementation 2009-----
 	pQSet1->SelectItem( 1 );
 
 	pQSet2->SetStyle( pQSet2->GetStyle() | WB_DOUBLEBORDER | WB_ITEMBORDER );
 	pQSet2->SetColCount( 1 );
 	pQSet2->SetLineCount( 1 );
 //	pQSet2->SetExtraSpacing( 1 );
-	//IAccessibility2 Implementation 2009-----
 	sColorPaletteN = sColorPalette;
     sColorPaletteN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 2"));
 	//pQSet2->InsertItem( 1, aPipetteColor );
 	pQSet2->InsertItem( 1, aPipetteColor, sColorPaletteN);
-	//-----IAccessibility2 Implementation 2009
 	pQSet2->SelectItem( 0 );
 
 	pQSet3->SetStyle( pQSet3->GetStyle() | WB_DOUBLEBORDER | WB_ITEMBORDER );
 	pQSet3->SetColCount( 1 );
 	pQSet3->SetLineCount( 1 );
 //	pQSet3->SetExtraSpacing( 1 );
-	//IAccessibility2 Implementation 2009-----
 	sColorPaletteN = sColorPalette;
  	sColorPaletteN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 3"));
 	pQSet3->InsertItem( 1, aPipetteColor, sColorPaletteN);
 	//pQSet3->InsertItem( 1, aPipetteColor );
-	//-----IAccessibility2 Implementation 2009
 	pQSet3->SelectItem( 0 );
 
 	pQSet4->SetStyle( pQSet4->GetStyle() | WB_DOUBLEBORDER | WB_ITEMBORDER );
 	pQSet4->SetColCount( 1 );
 	pQSet4->SetLineCount( 1 );
 //	pQSet4->SetExtraSpacing( 1 );
-	//IAccessibility2 Implementation 2009-----
 	sColorPaletteN = sColorPalette;
     sColorPaletteN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 4"));
 	pQSet4->InsertItem( 1, aPipetteColor, sColorPaletteN);
 	//pQSet4->InsertItem( 1, aPipetteColor );
-	//-----IAccessibility2 Implementation 2009
 	pQSet4->SelectItem( 0 );
 
 	pQSet1->Show();
 	pQSet2->Show();
 	pQSet3->Show();
 	pQSet4->Show();
-	//IAccessibility2 Implementation 2009-----
 	aCbx1.SetAccessibleRelationMemberOf( &aGrpQ );
 	pQSet1->SetAccessibleRelationMemberOf( &aGrpQ );
 	aSp1.SetAccessibleRelationMemberOf( &aGrpQ );
@@ -569,7 +556,6 @@
 	aLbColorTrans.SetAccessibleRelationLabeledBy( &aCbxTrans );
 	aLbColorTrans.SetAccessibleRelationMemberOf( &aGrpQ );
 	aCbxTrans.SetAccessibleRelationMemberOf( &aGrpQ );
-	//-----IAccessibility2 Implementation 2009
 }
 
 //-------------------------------------------------------------------------
@@ -1300,7 +1286,6 @@
     sSourceColorN = sSourceColor;
     sSourceColorN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 4"));
     aCbx4.SetAccessibleName (sSourceColorN);
-	//IAccessibility2 Implementation 2009-----
 	// set the accessible name for valueset
 	String sColorPalette (BMP_RESID( RID_SVXDLG_BMPMASK_STR_PALETTE));
     String sColorPaletteN;
@@ -1346,5 +1331,4 @@
     sReplaceWithN = sReplaceWith;
     sReplaceWithN.AppendAscii (RTL_CONSTASCII_STRINGPARAM (" 4"));
     aLbColor4.SetAccessibleName (sReplaceWithN); 
-	//-----IAccessibility2 Implementation 2009
 }
diff --git a/main/svx/source/dialog/bmpmask.hrc b/main/svx/source/dialog/bmpmask.hrc
index 820aca6..4969235 100644
--- a/main/svx/source/dialog/bmpmask.hrc
+++ b/main/svx/source/dialog/bmpmask.hrc
@@ -23,11 +23,9 @@
 #define RID_SVXDLG_BMPMASK				(RID_SVX_BMPMASK_START)
 #define RID_SVXDLG_BMPMASK_STR_TRANSP	(RID_SVX_BMPMASK_START + 1)
 #define RID_SVXDLG_BMPMASK_STR_SOURCECOLOR	(RID_SVX_BMPMASK_START + 2)
-/*IAccessibility2 Implementation 2009-----*/
 #define RID_SVXDLG_BMPMASK_STR_PALETTE (RID_SVX_BMPMASK_START + 3)
 #define RID_SVXDLG_BMPMASK_STR_TOLERANCE (RID_SVX_BMPMASK_START + 4)
 #define RID_SVXDLG_BMPMASK_STR_REPLACEWITH (RID_SVX_BMPMASK_START + 5)
-/*-----IAccessibility2 Implementation 2009*/
 #define GRP_Q 1
 #define CTR_PIPETTE 1
 #define CBX_1 1
diff --git a/main/svx/source/dialog/ctredlin.cxx b/main/svx/source/dialog/ctredlin.cxx
index 28d64ea..3241bda 100644
--- a/main/svx/source/dialog/ctredlin.cxx
+++ b/main/svx/source/dialog/ctredlin.cxx
@@ -1345,7 +1345,6 @@
 	Enable( false, bChild );
 }
 
-//IAccessibility2 Implementation 2009-----
 void SvxTPFilter::SetAccessibleRelationMemberOf( Window* pWin )
 {
 	aCbDate.SetAccessibleRelationMemberOf(pWin);
@@ -1366,7 +1365,6 @@
 	aCbComment.SetAccessibleRelationMemberOf(pWin);
 	aEdComment.SetAccessibleRelationMemberOf(pWin);
 }
-//-----IAccessibility2 Implementation 2009
 
 IMPL_LINK( SvxTPFilter, ModifyDate, void*,pTF)
 {
diff --git a/main/svx/source/dialog/ctredlin.hrc b/main/svx/source/dialog/ctredlin.hrc
index fbe3b45..db2b559 100644
--- a/main/svx/source/dialog/ctredlin.hrc
+++ b/main/svx/source/dialog/ctredlin.hrc
@@ -63,11 +63,9 @@
 #define	STR_TITLE4		4
 #define	STR_TITLE5		5
 
-//IAccessibility2 Implementation 2009-----
 #define STR_DATE_COMBOX 6
 #define STR_DATE_SPIN   7
 #define STR_DATE_SPIN1  8
 #define STR_DATE_TIME_SPIN 9
 #define STR_DATE_TIME_SPIN1 10
 #define STR_TREE     		11
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svx/source/dialog/ctredlin.src b/main/svx/source/dialog/ctredlin.src
index 6ee0664..ae85200 100644
--- a/main/svx/source/dialog/ctredlin.src
+++ b/main/svx/source/dialog/ctredlin.src
@@ -110,10 +110,8 @@
 			ImageBitmap = Bitmap { File = "time.bmp" ; };
 			MASKCOLOR
 		};
-		// IAccessibility2 implementation 2009. ------
 		//QuickHelpText [ en-US ] = "Set Date/Time" ;
 		QuickHelpText [ en-US ] = "Set Start Date/Time" ;
-		// ------ IAccessibility2 implementation 2009.
 	};
 	FixedText FT_DATE2
 	{
@@ -169,10 +167,8 @@
 			ImageBitmap = Bitmap { File = "time.bmp" ; };
 			MASKCOLOR
 		};
-		// IAccessibility2 implementation 2009. ------
 		//QuickHelpText [ en-US ] = "Set Date/Time" ;
 		QuickHelpText [ en-US ] = "Set End Date/Time" ;
-		// ------ IAccessibility2 implementation 2009.
 	};
 	CheckBox CB_AUTOR
 	{
@@ -256,7 +252,6 @@
         ImageBitmap = Bitmap { File = "time_h.bmp" ; };
         MASKCOLOR
     };
-    	/*IAccessibility2 Implementation 2009-----*/
 	String STR_DATE_COMBOX
 	{
 		Text [ en-US ] = "Date Condition" ;
@@ -281,7 +276,6 @@
 	{
 		Text [ en-US ] = "Changes" ;
 	};
-	/*-----IAccessibility2 Implementation 2009*/
 };
 TabPage SID_REDLIN_VIEW_PAGE
 {
diff --git a/main/svx/source/dialog/dlgctrl.cxx b/main/svx/source/dialog/dlgctrl.cxx
index 8566d6f..a273bb5 100644
--- a/main/svx/source/dialog/dlgctrl.cxx
+++ b/main/svx/source/dialog/dlgctrl.cxx
@@ -37,7 +37,6 @@
 #include <vcl/region.hxx>
 #include <vcl/gradient.hxx>
 #include <vcl/hatch.hxx>
-// IAccessibility2 implementation 2009. ------
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLEEVENTOBJECT_HPP_
 #include <com/sun/star/accessibility/AccessibleEventObject.hpp>
 #endif
@@ -48,7 +47,6 @@
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #endif
 #include "svxpixelctlaccessiblecontext.hxx"
-// ------ IAccessibility2 implementation 2009.
 #include <svtools/colorcfg.hxx>
 #include <svxrectctaccessiblecontext.hxx>
 #include <com/sun/star/lang/XUnoTunnel.hpp>
@@ -575,7 +573,6 @@
 void SvxRectCtl::GetFocus()
 {
 	SetFocusRect();
-	// IAccessibility2 implementation 2009. ------
 	//Solution: Send the accessible focused event
 	Control::GetFocus();
 	// Send accessibility event.
@@ -583,7 +580,6 @@
 	{
 		pAccContext->FireChildFocus(GetActualRP());		
 	}
-	// ------ IAccessibility2 implementation 2009.
 }
 
 
@@ -677,7 +673,6 @@
 |*	Gibt den aktuell ausgewaehlten RECT_POINT zur�ck
 |*
 \************************************************************************/
-// IAccessibility2 implementation 2009. ------
 void SvxRectCtl::SetActualRP( RECT_POINT eNewRP /* MT: , sal_Bool bFireFocus */ )
 {
 	// MT: bFireFox as API parameter is ugly...
@@ -690,7 +685,6 @@
 	if( pAccContext )
 		pAccContext->selectChild( eNewRP /* MT, bFireFocus */ );
 }
-// ------ IAccessibility2 implementation 2009.
 void SvxRectCtl::SetState( CTL_STATE nState )
 {
 	m_nState = nState;
@@ -885,7 +879,6 @@
 |*	Control zum Editieren von Bitmaps
 |*
 \************************************************************************/
-// IAccessibility2 implementation 2009. ------
 
 ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SvxPixelCtl::CreateAccessible()
 {
@@ -945,12 +938,10 @@
 	return GetFoucsPosIndex();
 
 }
-// ------ IAccessibility2 implementation 2009.
 SvxPixelCtl::SvxPixelCtl( Window* pParent, const ResId& rResId, sal_uInt16 nNumber ) :
 						Control		( pParent, rResId ),
 						nLines		( nNumber ),
 						bPaintable	( sal_True )
-						// IAccessibility2 implementation 2009. ------
 						//Solution:Initialize it's value to Point(0,0)
 						,aFocusPosition(0,0)
 {
@@ -964,7 +955,6 @@
 	nSquares = nLines * nLines;
 	pPixel = new sal_uInt16[ nSquares ];
 	rtl_zeroMemory(pPixel, nSquares * sizeof(sal_uInt16));
-	// IAccessibility2 implementation 2009. ------
 	m_pAccess=NULL;
 }
 
@@ -1001,7 +991,6 @@
 
 void SvxPixelCtl::MouseButtonDown( const MouseEvent& rMEvt )
 {
-	// IAccessibility2 implementation 2009. ------
 	//Point aPt = PixelToLogic( rMEvt.GetPosPixel() );
 	//Point aPtTl, aPtBr;
 	//sal_uInt16	nX, nY;
@@ -1031,7 +1020,6 @@
 	{
 		m_pAccess->NotifyChild(nIndex,sal_True,sal_True);
 	}
-	// ------ IAccessibility2 implementation 2009.
 }
 
 /*************************************************************************
@@ -1082,13 +1070,11 @@
 				DrawRect( Rectangle( aPtTl, aPtBr ) );
 			}
 		}
-		// IAccessibility2 implementation 2009. ------
 		//Solution:Draw visual focus when has focus
 		if( HasFocus() )
 		{
 			ShowFocus(implCalFocusRect(aFocusPosition));	
 		}
-		// ------ IAccessibility2 implementation 2009.
 	} // bPaintable
 	else
 	{
@@ -1098,7 +1084,6 @@
 		DrawLine( Point( 0, aRectSize.Height() ), Point( aRectSize.Width(), 0 ) );
 	}
 }
-// IAccessibility2 implementation 2009. ------
 //Solution:Caculate visual focus rectangle via focus position
 Rectangle SvxPixelCtl::implCalFocusRect( const Point& aPosition )
 {
@@ -1221,7 +1206,6 @@
 	}
 	Control::LoseFocus();
 }
-// ------ IAccessibility2 implementation 2009.
 
 /*************************************************************************
 |*
diff --git a/main/svx/source/dialog/dlgctrl.src b/main/svx/source/dialog/dlgctrl.src
index a5fe398..509de27 100644
--- a/main/svx/source/dialog/dlgctrl.src
+++ b/main/svx/source/dialog/dlgctrl.src
@@ -27,9 +27,7 @@
 {
 	File = "rectbtns.bmp" ;
 };
-/*IAccessibility2 Implementation 2009-----*/
 String STR_SWITCH
 {
 	Text [ en-US ] = "Switch" ;
 };
-/*-----IAccessibility2 Implementation 2009*/
diff --git a/main/svx/source/dialog/frmsel.cxx b/main/svx/source/dialog/frmsel.cxx
index 11dc0a5..b9c4643 100644
--- a/main/svx/source/dialog/frmsel.cxx
+++ b/main/svx/source/dialog/frmsel.cxx
@@ -30,12 +30,10 @@
 #include "frmselimpl.hxx"
 #include "AccessibleFrameSelector.hxx"
 #include <svx/dialmgr.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLESTATETYPE_HDL_
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 #ifndef _SVX_DIALOGS_HRC
 #include <svx/dialogs.hrc>
@@ -49,11 +47,9 @@
 namespace svx {
 
 using ::com::sun::star::uno::Reference;
-//IAccessibility2 Implementation 2009-----
 using ::com::sun::star::uno::Any;
 using ::com::sun::star::accessibility::XAccessible;
 using namespace ::com::sun::star::accessibility;
-//-----IAccessibility2 Implementation 2009
 // ============================================================================
 // global functions from framebordertype.hxx
 
@@ -705,7 +701,6 @@
 void FrameSelectorImpl::SetBorderState( FrameBorder& rBorder, FrameBorderState eState )
 {
     DBG_ASSERT( rBorder.IsEnabled(), "svx::FrameSelectorImpl::SetBorderState - access to disabled border" );
-	//IAccessibility2 Implementation 2009-----
 	Any aOld;
 	Any aNew;
 	Any& rMod = eState == FRAMESTATE_SHOW ? aNew : aOld;
@@ -722,7 +717,6 @@
         rBorder.SetState( eState );
 	if (pFrameSelector)
 			pFrameSelector->NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOld, aNew );
-	//-----IAccessibility2 Implementation 2009
     DoInvalidate( true );
 }
 
@@ -940,7 +934,6 @@
 void FrameSelector::SelectBorder( FrameBorderType eBorder, bool bSelect /*, bool bFocus */ )
 {
     mxImpl->SelectBorder( mxImpl->GetBorderAccess( eBorder ), bSelect );
-	//IAccessibility2 Implementation 2009-----
 	// MT: bFireFox as API parameter is ugly...
 	// if (bFocus)
 	{
@@ -953,7 +946,6 @@
 			pFrameSelector->NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 bool FrameSelector::IsAnyBorderSelected() const
@@ -1100,10 +1092,8 @@
                 if( !(*aIt)->IsSelected() )
                 {
                     bNewSelected = true;
-			//IAccessibility2 Implementation 2009-----
                     //mxImpl->SelectBorder( **aIt, true );
 			SelectBorder((**aIt).GetType(), true);
-			//-----IAccessibility2 Implementation 2009
                 }
             }
             else
@@ -1200,7 +1190,6 @@
     mxImpl->DoInvalidate( false );
     if( mxImpl->mxAccess.is() )
         mxImpl->mpAccess->NotifyFocusListeners( sal_True );
-	//IAccessibility2 Implementation 2009-----
 	if (IsAnyBorderSelected())
 	{
 		FrameBorderType borderType = FRAMEBORDER_NONE;
@@ -1224,7 +1213,6 @@
 	}
 	for( SelFrameBorderIter aIt( mxImpl->maEnabBorders ); aIt.Is(); ++aIt )
 			mxImpl->SetBorderState( **aIt, FRAMESTATE_SHOW );
-	//-----IAccessibility2 Implementation 2009
     Control::GetFocus();
 }
 
diff --git a/main/svx/source/dialog/sdstring.src b/main/svx/source/dialog/sdstring.src
index 8fb16e7..0a780bb 100644
--- a/main/svx/source/dialog/sdstring.src
+++ b/main/svx/source/dialog/sdstring.src
@@ -1187,7 +1187,6 @@
 	Text [ en-US ] = "Gallery Theme" ;
 };
 
-//IAccessibility2 Implementation 2009-----
 String RID_SVXSTR_GALLERY_THEMEITEMS
 {
 	Text [ en-US ] = "Theme Items";
@@ -1204,4 +1203,3 @@
 {
 	Text [ en-US ] = "Preview";
 };
-//-----IAccessibility2 Implementation 2009
diff --git a/main/svx/source/dialog/srchdlg.cxx b/main/svx/source/dialog/srchdlg.cxx
index 7ab33e7..71b890a 100644
--- a/main/svx/source/dialog/srchdlg.cxx
+++ b/main/svx/source/dialog/srchdlg.cxx
@@ -70,13 +70,11 @@
 #include <tools/resary.hxx>
 #include <svx/svxdlg.hxx> //CHINA001
 
-//IAccessibility2 Impplementaton 2009-----
 #ifndef _ACCESSIBLESVXFINDREPLACEDIALOG_HXX_
 #include <svx/AccessibleSvxFindReplaceDialog.hxx>
 #endif
 using namespace com::sun::star::uno;
 using namespace com::sun::star::accessibility;
-//-----IAccessibility2 Impplementaton 2009
 
 #include <sfx2/layout-pre.hxx>
 
@@ -2516,7 +2514,6 @@
     rBindings.GetDispatcher()->Execute( SID_SEARCH_ITEM, SFX_CALLMODE_SLOT, ppArgs );
 }
 
-//IAccessible2 Implementation 2009-----
 ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > 
 		SvxSearchDialog::GetComponentInterface( sal_Bool bCreate )
 {
@@ -2531,7 +2528,6 @@
 	else
 		return xPeer;
 }
-//-----IAccessible2 Implementation 2009
 
 // class SvxSearchDialogWrapper ------------------------------------------
 
diff --git a/main/svx/source/fmcomp/fmgridcl.cxx b/main/svx/source/fmcomp/fmgridcl.cxx
index 6b322c8..31c97b7 100644
--- a/main/svx/source/fmcomp/fmgridcl.cxx
+++ b/main/svx/source/fmcomp/fmgridcl.cxx
@@ -1648,7 +1648,7 @@
 		Reference< ::com::sun::star::beans::XPropertySet > xCol;
 		::cppu::extractInterface(xCol, xColumns->getByIndex(i));
 
-		aName  = (const sal_Unicode*)::comphelper::getString(xCol->getPropertyValue(FM_PROP_LABEL));
+		aName  = ::comphelper::getString( xCol->getPropertyValue(FM_PROP_LABEL)).getStr();
 
 		aWidth = xCol->getPropertyValue(FM_PROP_WIDTH);
 		sal_Int32 nWidth = 0;
diff --git a/main/svx/source/fmcomp/gridcell.cxx b/main/svx/source/fmcomp/gridcell.cxx
index d9611da..a48da0b 100644
--- a/main/svx/source/fmcomp/gridcell.cxx
+++ b/main/svx/source/fmcomp/gridcell.cxx
@@ -1539,7 +1539,7 @@
         {
             // Hier kann ich nicht mit einem double arbeiten, da das Feld mir keines liefern kann.
             // Also einfach den Text vom ::com::sun::star::util::NumberFormatter in die richtige ::com::sun::star::form::component::Form brinden lassen.
-            aText = (const sal_Unicode*)_rxField->getString();
+            aText = _rxField->getString().getStr();
             if (_rxField->wasNull())
                 return aText;
             ((FormattedField*)m_pPainter)->SetTextFormatted(aText);
@@ -2957,7 +2957,7 @@
             {
                 sal_Int16 nPos = (sal_Int16)static_cast<ListBox*>(m_pWindow)->GetSelectEntryPos();
                 if ( ( nPos >= 0 ) && ( nPos < m_aValueList.getLength() ) )
-                    aText = (const sal_Unicode*)m_aValueList.getConstArray()[nPos];
+                    aText = m_aValueList.getConstArray()[nPos];
             }
 
             if (m_aText != aText)
diff --git a/main/svx/source/form/filtnav.cxx b/main/svx/source/form/filtnav.cxx
index ef0b43b..eb8c832 100644
--- a/main/svx/source/form/filtnav.cxx
+++ b/main/svx/source/form/filtnav.cxx
@@ -948,7 +948,7 @@
 
 	m_pAdapter->setText(nParentPos, pItem, rText);
 
-	if (!rText)
+	if( rText.isEmpty() )
 		Remove(pItem);
 	else
 	{
diff --git a/main/svx/source/form/fmsrcimp.cxx b/main/svx/source/form/fmsrcimp.cxx
index e41306f..9944b8d 100644
--- a/main/svx/source/form/fmsrcimp.cxx
+++ b/main/svx/source/form/fmsrcimp.cxx
@@ -254,7 +254,7 @@
 #if OSL_DEBUG_LEVEL > 0
         String sDebugMessage;
         sDebugMessage.AssignAscii("FmSearchEngine::MoveCursor : catched a DatabaseException (");
-        sDebugMessage += (const sal_Unicode*)e.SQLState;
+        sDebugMessage += e.SQLState.getStr();
         sDebugMessage.AppendAscii(") !");
         DBG_ERROR(ByteString(sDebugMessage, RTL_TEXTENCODING_ASCII_US).GetBuffer());
 #endif
@@ -265,7 +265,7 @@
 #if OSL_DEBUG_LEVEL > 0
         UniString sDebugMessage;
         sDebugMessage.AssignAscii("FmSearchEngine::MoveCursor : catched an Exception (");
-        sDebugMessage += (const sal_Unicode*)e.Message;
+        sDebugMessage += e.Message.getStr();
         sDebugMessage.AppendAscii(") !");
         DBG_ERROR(ByteString(sDebugMessage, RTL_TEXTENCODING_ASCII_US).GetBuffer());
 #endif
diff --git a/main/svx/source/inc/svxrectctaccessiblecontext.hxx b/main/svx/source/inc/svxrectctaccessiblecontext.hxx
index 73cd0cb..ceca640 100644
--- a/main/svx/source/inc/svxrectctaccessiblecontext.hxx
+++ b/main/svx/source/inc/svxrectctaccessiblecontext.hxx
@@ -43,14 +43,12 @@
 #include <vos/mutex.hxx>
 #include <cppuhelper/interfacecontainer.h>
 #include <cppuhelper/compbase6.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _CPPUHELPER_COMPBASE7_HXX_
 #include <cppuhelper/compbase7.hxx>
 #endif
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
 #include <com/sun/star/accessibility/XAccessibleAction.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 #include <comphelper/broadcasthelper.hxx>
 #include <cppuhelper/implbase6.hxx>
 #include <comphelper/servicehelper.hxx>
@@ -255,10 +253,8 @@
         @param nIndexOfChild
             Index of the new child which should be selected.
     */
-	// IAccessibility2 implementation 2009. ------
 	//void selectChild( long nIndexOfChild );
 	void selectChild( long nIndexOfChild, sal_Bool bFireFocus = sal_True);
-	// ------ IAccessibility2 implementation 2009.
 
 public:
     /** Selects a new child by point.
@@ -270,12 +266,10 @@
             Button which belongs to the child which should be selected.
     */
 	//void selectChild( RECT_POINT ePoint );
-	// IAccessibility2 implementation 2009. ------
 	void selectChild( RECT_POINT ePoint, sal_Bool bFireFocus = sal_True );
 	void FireChildFocus( RECT_POINT eButton );
 	//Solution: Add the event handling method
 	void FireAccessibleEvent (short nEventId, const ::com::sun::star::uno::Any& rOld, const ::com::sun::star::uno::Any& rNew);
-	// ------ IAccessibility2 implementation 2009.
 	/// Sets the name
 	void setName( const ::rtl::OUString& rName );
 
@@ -345,7 +339,6 @@
 	return rBHelper.bDisposed || rBHelper.bInDispose;
 }
 
-//IAccessibility2 Implementation 2009-----
 typedef ::cppu::WeakAggComponentImplHelper7<
 			::com::sun::star::accessibility::XAccessible,
 			::com::sun::star::accessibility::XAccessibleComponent,
@@ -355,7 +348,6 @@
 			::com::sun::star::accessibility::XAccessibleAction,
 			::com::sun::star::lang::XServiceInfo >
 			SvxRectCtlChildAccessibleContext_Base;
-//-----IAccessibility2 Implementation 2009
 
 
 class SvxRectCtlChildAccessibleContext : public SvxRectCtlChildAccessibleContext_Base
@@ -487,13 +479,11 @@
     virtual ::com::sun::star::uno::Any SAL_CALL
 		getMinimumValue() throw( ::com::sun::star::uno::RuntimeException );
 
-//IAccessibility2 Implementation 2009-----
 	// XAccessibleAction
 	virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
 	virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
 	virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-//-----IAccessibility2 Implementation 2009
 	//=====  XServiceInfo  ====================================================
 
 	virtual ::rtl::OUString SAL_CALL
@@ -515,10 +505,8 @@
 
 	/// Sets the checked status
 	//void setStateChecked( sal_Bool bChecked );
-	// IAccessibility2 implementation 2009. ------
 	void setStateChecked( sal_Bool bChecked, sal_Bool bFireFocus = sal_True);
 	void FireFocusEvent();
-	// ------ IAccessibility2 implementation 2009.
 protected:
 	virtual Rectangle GetBoundingBoxOnScreen( void ) throw( ::com::sun::star::uno::RuntimeException );
 
diff --git a/main/svx/source/svdraw/svdoashp.cxx b/main/svx/source/svdraw/svdoashp.cxx
index 6ee5632..ac67fc8 100644
--- a/main/svx/source/svdraw/svdoashp.cxx
+++ b/main/svx/source/svdraw/svdoashp.cxx
@@ -3538,7 +3538,6 @@
 	mpLastShadowGeometry = 0L;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString SdrObjCustomShape::GetCustomShapeName()
 {
 	rtl::OUString sShapeName;
@@ -3554,5 +3553,4 @@
 	}
 	return sShapeName;
 }
-//-----IAccessibility2 Implementation 2009
 // eof
diff --git a/main/svx/source/svdraw/svdobj.cxx b/main/svx/source/svdraw/svdobj.cxx
index 81116c0..0f27fb6 100644
--- a/main/svx/source/svdraw/svdobj.cxx
+++ b/main/svx/source/svdraw/svdobj.cxx
@@ -3185,12 +3185,6 @@
     return false;
 }
 
-//IAccessibility2 Implementation 2009-----
-const SdrObject* SdrObject::GetCaptionObj() const
-{
-	return pCaptionObj;
-}
-//-----IAccessibility2 Implementation 2009
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 //
 //   @@@@  @@@@@  @@@@@@  @@@@@  @@@@   @@@@  @@@@@@  @@@@  @@@@@  @@  @@
diff --git a/main/svx/source/svdraw/svdoole2.cxx b/main/svx/source/svdraw/svdoole2.cxx
index ee7c834..71dfae9 100644
--- a/main/svx/source/svdraw/svdoole2.cxx
+++ b/main/svx/source/svdraw/svdoole2.cxx
@@ -844,7 +844,6 @@
 }
 
 // -----------------------------------------------------------------------------
-//IAccessibility2 Implementation 2009-----
 String SdrOle2Obj::GetStyleString()
 {
 	String strStyle;
@@ -856,7 +855,6 @@
 }
 
 // -----------------------------------------------------------------------------
-//-----IAccessibility2 Implementation 2009
 SdrOle2Obj::~SdrOle2Obj()
 {
     DBG_DTOR( SdrOle2Obj,NULL);
diff --git a/main/svx/source/svdraw/svdstr.src b/main/svx/source/svdraw/svdstr.src
index 649c383..9a8116a 100644
--- a/main/svx/source/svdraw/svdstr.src
+++ b/main/svx/source/svdraw/svdstr.src
@@ -2880,7 +2880,6 @@
     File = "rotation_h.png";
 };
 
-//IAccessibility2 Implementation 2009-----
 String STR_ObjNameSingulFONTWORK
 {
 	Text [ en-US ] = "font work" ;
@@ -2889,5 +2888,4 @@
 {
 	Text [ en-US ] = "font works" ;
 };
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/svx/source/table/accessiblecell.cxx b/main/svx/source/table/accessiblecell.cxx
index cad08e4..8ea3c09 100644
--- a/main/svx/source/table/accessiblecell.cxx
+++ b/main/svx/source/table/accessiblecell.cxx
@@ -251,7 +251,6 @@
 				pStateSet->AddState(AccessibleStateType::VISIBLE);
 
 
-			//IAccessibility2 Implementation 2009-----
 			//Solution:Just when the parent table is not read-only,set states EDITABLE,RESIZABLE,MOVEABLE
 		    ::com::sun::star::uno::Reference<XAccessible> xTempAcc = getAccessibleParent();
 		    if( xTempAcc.is() )
@@ -278,7 +277,6 @@
 					}
 				}
 		    }
-			//-----IAccessibility2 Implementation 2009
             // Create a copy of the state set that may be modified by the
             // caller without affecting the current state set.
             xStateSet = Reference<XAccessibleStateSet>(new ::utl::AccessibleStateSetHelper (*pStateSet));
@@ -602,7 +600,6 @@
     return mnIndexInParent;
 }
 
-//IAccessibility2 Implementation 2009-----
 sdr::table::CellRef AccessibleCell::getCellRef()
 {
 	return mxCell;
@@ -666,7 +663,6 @@
 	if (mpText)						
 		mpText->UpdateChildren();
 }
-//-----IAccessibility2 Implementation 2009
 
 /* MT: Above getAccessibleName was introduced with IA2 CWS, while below was introduce in 3.3 meanwhile. Check which one is correct
 If this is correct, we also don't need 	sdr::table::CellRef getCellRef(), UpdateChildren(), getCellName( sal_Int32 nCol, sal_Int32 nRow ) above
diff --git a/main/svx/source/table/accessibletableshape.cxx b/main/svx/source/table/accessibletableshape.cxx
index 423ec70..9861ee1 100644
--- a/main/svx/source/table/accessibletableshape.cxx
+++ b/main/svx/source/table/accessibletableshape.cxx
@@ -40,11 +40,9 @@
 #include <algorithm>
 
 #include <cppuhelper/implbase1.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <svx/svdotable.hxx>
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/view/XSelectionSupplier.hpp>
-//-----IAccessibility2 Implementation 2009
 
 using ::rtl::OUString;
 
@@ -99,21 +97,17 @@
 	Reference< XTable > mxTable;
 	AccessibleCellMap maChildMap;
 	Reference< XAccessible> mxAccessible;
-	//IAccessibility2 Implementation 2009-----
 	sal_Int32 mRowCount, mColCount;
 	//get the cached AccessibleCell from XCell
 	Reference< AccessibleCell > getAccessibleCell (Reference< XCell > xCell);
-	//-----IAccessibility2 Implementation 2009
 };
 
 //-----------------------------------------------------------------------------
 
 AccessibleTableShapeImpl::AccessibleTableShapeImpl( AccessibleShapeTreeInfo& rShapeTreeInfo )
 : mrShapeTreeInfo( rShapeTreeInfo )
-//IAccessibility2 Implementation 2009-----
 , mRowCount(0)
 , mColCount(0)
-//-----IAccessibility2 Implementation 2009
 {
 }
 
@@ -128,7 +122,6 @@
 	{
 		Reference< XModifyListener > xListener( this );
 		mxTable->addModifyListener( xListener );
-		//IAccessibility2 Implementation 2009-----
 		//register the listener with table model
 		Reference< ::com::sun::star::view::XSelectionSupplier > xSelSupplier(xTable, UNO_QUERY);
 		Reference< ::com::sun::star::view::XSelectionChangeListener > xSelListener( xAccessible, UNO_QUERY );
@@ -150,7 +143,6 @@
 		{
 			(*iter).second->dispose();
 		}
-		//-----IAccessibility2 Implementation 2009
 		Reference< XModifyListener > xListener( this );
 		mxTable->removeModifyListener( xListener );
 		mxTable.clear();
@@ -173,7 +165,6 @@
 }
 
 //-----------------------------------------------------------------------------
-//-----IAccessibility2 Implementation 2009
 Reference< XAccessible > AccessibleTableShapeImpl::getAccessibleChild( sal_Int32 nChildIndex ) throw(IndexOutOfBoundsException)
 {
 	sal_Int32 nColumn = 0, nRow = 0;
@@ -193,9 +184,7 @@
 		
 		rtl::Reference< AccessibleCell > xAccessibleCell( new AccessibleCell( mxAccessible, xCellRef, nChildIndex, mrShapeTreeInfo ) );
 
-		//IAccessibility2 Implementation 2009-----
 		xAccessibleCell->Init();
-		//-----IAccessibility2 Implementation 2009
 		maChildMap[xCell] = xAccessibleCell;
 
         xAccessibleCell->Init();
@@ -242,7 +231,6 @@
 		const sal_Int32 nRowCount = mxTable->getRowCount();
 		const sal_Int32 nColCount = mxTable->getColumnCount();
 
-		//IAccessibility2 Implementation 2009-----
 		sal_Bool bRowOrColumnChanged = sal_False;
 		if (mRowCount != nRowCount || mColCount != nColCount )
 		{
@@ -250,7 +238,6 @@
 			mRowCount = nRowCount;
 			mColCount = nColCount;
 		}
-		//-----IAccessibility2 Implementation 2009
 		sal_Int32 nChildIndex = 0;
 
 		for( sal_Int32 nRow = 0; nRow < nRowCount; ++nRow )
@@ -290,7 +277,6 @@
 						// xAccessibleCell->ResetState(AccessibleStateType::OFFSCREEN);
 						xAccessibleCell->SetState(AccessibleStateType::SHOWING);
 					}
-					//-----IAccessibility2 Implementation 2009
 
 					// move still existing cell from temporary child map to our child map
 					maChildMap[xCell] = xAccessibleCell;
@@ -306,7 +292,6 @@
 					xAccessibleCell->Init();
 					maChildMap[xCell] = xAccessibleCell;
 				}
-				//-----IAccessibility2 Implementation 2009
 
 				++nChildIndex;
 			}
@@ -322,7 +307,6 @@
 		//IAccessibility2 Implementation 2009-----, notify bridge to update the acc cache. 
 		AccessibleTableShape *pAccTable = dynamic_cast <AccessibleTableShape *> (mxAccessible.get());
 		pAccTable->CommitChange(AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any());
-		//-----IAccessibility2 Implementation 2009
 	}
 	catch( Exception& )
 	{
@@ -390,7 +374,6 @@
 
 Any SAL_CALL AccessibleTableShape::queryInterface( const Type& aType ) throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	if ( aType == ::getCppuType((Reference<XAccessibleTableSelection> *)0) )
     {
 		Reference<XAccessibleTableSelection> xThis( this );
@@ -399,7 +382,6 @@
 		return aRet;
 	}
 	else
-	//-----IAccessibility2 Implementation 2009
 	return AccessibleTableShape_Base::queryInterface( aType );
 }
 
@@ -548,7 +530,6 @@
 
 Reference< XAccessibleTable > SAL_CALL AccessibleTableShape::getAccessibleRowHeaders(  ) throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	//Reference< XAccessibleTable > xRet( this ); // todo
 	Reference< XAccessibleTable > xRet;
 	SvxTableController* pController = getTableController();
@@ -560,7 +541,6 @@
 			xRet.set( pTableHeader );
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	return xRet;
 }
 
@@ -568,7 +548,6 @@
 
 Reference< XAccessibleTable > SAL_CALL AccessibleTableShape::getAccessibleColumnHeaders(  ) throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	//Reference< XAccessibleTable > xRet( this ); // todo
 	Reference< XAccessibleTable > xRet;
 	SvxTableController* pController = getTableController();
@@ -580,7 +559,6 @@
 			xRet.set( pTableHeader );
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	return xRet;
 }
 
@@ -588,7 +566,6 @@
 
 Sequence< sal_Int32 > SAL_CALL AccessibleTableShape::getSelectedAccessibleRows(  ) throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	/*Sequence< sal_Int32 > aRet;*/
 	sal_Int32 nRow = getAccessibleRowCount();
 	::std::vector< sal_Bool > aSelected( nRow, sal_True );
@@ -621,14 +598,12 @@
 	}
 
 	return aRet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
 
 Sequence< sal_Int32 > SAL_CALL AccessibleTableShape::getSelectedAccessibleColumns(  ) throw (RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	/*Sequence< sal_Int32 > aRet;*/
 	sal_Int32 nColumn = getAccessibleColumnCount();
 	::std::vector< sal_Bool > aSelected( nColumn, sal_True );
@@ -661,7 +636,6 @@
 	}
 
 	return aRet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
@@ -670,13 +644,11 @@
 {
     ::vos::OGuard aSolarGuard (::Application::GetSolarMutex());
 	checkCellPosition( 0, nRow );
-	//IAccessibility2 Implementation 2009-----
 	SvxTableController* pController = getTableController();
 	if( pController )
 	{
 		return pController->isRowSelected( nRow );
 	}
-	//-----IAccessibility2 Implementation 2009
 	return sal_False;
 }
 
@@ -686,13 +658,11 @@
 {
     ::vos::OGuard aSolarGuard (::Application::GetSolarMutex());
 	checkCellPosition( nColumn, 0 );
-	//IAccessibility2 Implementation 2009-----
 	SvxTableController* pController = getTableController();
 	if( pController )
 	{
 		return pController->isColumnSelected( nColumn );
 	}
-	//-----IAccessibility2 Implementation 2009
 	return sal_False;
 }
 
@@ -771,10 +741,8 @@
     ::vos::OGuard aSolarGuard (::Application::GetSolarMutex());
 	sal_Int32 nColumn = 0, nRow = 0;
 	mxImpl->getColumnAndRow( nChildIndex, nColumn, nRow );
-	//IAccessibility2 Implementation 2009-----
 	//return nChildIndex;
 	return nColumn;
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
@@ -813,11 +781,9 @@
 	CellPos aPos;
 	mxImpl->getColumnAndRow( nChildIndex, aPos.mnCol, aPos.mnRow );
 
-	//IAccessibility2 Implementation 2009-----
 	// Para order is not correct
 	//return isAccessibleSelected(aPos.mnCol, aPos.mnRow);
 	return isAccessibleSelected(aPos.mnRow, aPos.mnCol);
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
@@ -868,7 +834,6 @@
 {
     ::vos::OGuard aSolarGuard (::Application::GetSolarMutex());
 
-	//IAccessibility2 Implementation 2009-----
 	/*SvxTableController* pController = getTableController();
 	if( pController && pController->hasSelectedCells() )
 	{
@@ -905,7 +870,6 @@
     }
 
 	return getAccessibleChild( nChildIndex );
-	//-----IAccessibility2 Implementation 2009
 }
 
 //--------------------------------------------------------------------
@@ -938,7 +902,6 @@
 }
 //--------------------------------------------------------------------
 
-//IAccessibility2 Implementation 2009-----
 //=====  XAccessibleTableSelection  ============================================
 sal_Bool SAL_CALL AccessibleTableShape::selectRow( sal_Int32 row ) 
 throw (IndexOutOfBoundsException, RuntimeException) 
@@ -1109,7 +1072,6 @@
 {
 	return AccessibleContextBase::ResetState (aState);
 }
-//-----IAccessibility2 Implementation 2009
 void AccessibleTableShape::checkCellPosition( sal_Int32 nCol, sal_Int32 nRow ) throw ( IndexOutOfBoundsException )
 {
 	if( (nCol >= 0) && (nRow >= 0) && mxImpl->mxTable.is() && (nCol < mxImpl->mxTable->getColumnCount()) && (nRow < mxImpl->mxTable->getRowCount()) )
@@ -1118,7 +1080,6 @@
 	throw IndexOutOfBoundsException();
 }
 
-//IAccessibility2 Implementation 2009-----
 AccessibleTableHeaderShape::AccessibleTableHeaderShape( AccessibleTableShape* pTable, sal_Bool bRow )
 {
 	mpTable = pTable;
@@ -1446,5 +1407,4 @@
 		return sal_True;
 	}
 }
-//-----IAccessibility2 Implementation 2009
 }
diff --git a/main/svx/source/table/tablecontroller.cxx b/main/svx/source/table/tablecontroller.cxx
index 158070f..0b64bdc 100644
--- a/main/svx/source/table/tablecontroller.cxx
+++ b/main/svx/source/table/tablecontroller.cxx
@@ -2612,7 +2612,6 @@
 	return 0;
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool SvxTableController::selectRow( sal_Int32 row )
 {
 	if( !mxTable.is() )
@@ -2697,5 +2696,4 @@
 
 	return aSettings.mbUseFirstColumn;
 }
-//-----IAccessibility2 Implementation 2009
 } }
diff --git a/main/svx/source/tbxctrls/colrctrl.src b/main/svx/source/tbxctrls/colrctrl.src
index 6ffc7a7..7174d21 100644
--- a/main/svx/source/tbxctrls/colrctrl.src
+++ b/main/svx/source/tbxctrls/colrctrl.src
@@ -50,10 +50,8 @@
 	};
 };
 
-// IAccessibility2 implementation 2009. ------
 String STR_COLORTABLE
 {
 	Text [ en-US ] = "Color Palette" ;
 };
-// ------ IAccessibility2 implementation 2009.
 
diff --git a/main/svx/source/tbxctrls/tbcontrl.src b/main/svx/source/tbxctrls/tbcontrl.src
index cf19718..1c1b41b 100644
--- a/main/svx/source/tbxctrls/tbcontrl.src
+++ b/main/svx/source/tbxctrls/tbcontrl.src
@@ -181,11 +181,9 @@
 	Text [ en-US ] = "More...";
 };
 
-//IAccessibility2 Implementation 2009-----
 String RID_SVXSTR_TEXTCOLOR
 {
 	Text [ en-US ] = "Font color";
 };
-//-----IAccessibility2 Implementation 2009
 // ********************************************************************** EOF
 
diff --git a/main/svx/source/unodraw/unoprov.cxx b/main/svx/source/unodraw/unoprov.cxx
index 61a56d7..cfedcbc 100644
--- a/main/svx/source/unodraw/unoprov.cxx
+++ b/main/svx/source/unodraw/unoprov.cxx
@@ -778,7 +778,6 @@
 	    { MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_BOUNDRECT),	OWN_ATTR_BOUNDRECT, &::getCppuType((const ::com::sun::star::awt::Rectangle*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
 	    	//IAccessibility2 Implementation 2009-----, the name property of table should also be exported. 
 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_NAME), 		SDRATTR_OBJECTNAME				, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
-		//-----IAccessibility2 Implementation 2009
 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
 		{ MAP_CHAR_LEN("Model"),						OWN_ATTR_OLEMODEL				, &::com::sun::star::table::XTable::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
diff --git a/main/svx/source/unodraw/unoshtxt.cxx b/main/svx/source/unodraw/unoshtxt.cxx
index e00cb2a..034694c 100644
--- a/main/svx/source/unodraw/unoshtxt.cxx
+++ b/main/svx/source/unodraw/unoshtxt.cxx
@@ -52,10 +52,8 @@
 #include <comphelper/processfactory.hxx>
 #include <vos/mutex.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <svx/svdotable.hxx>
 #include <../table/cell.hxx>
-//-----IAccessibility2 Implementation 2009
 
 #include <svx/sdrpaintwindow.hxx>
 
@@ -413,7 +411,6 @@
 							}
 						}
 					}
-					//-----IAccessibility2 Implementation 2009				
                     // invalidate old forwarder
                     if( !mbForwarderIsEditMode )
                     {
diff --git a/main/sw/inc/PostItMgr.hxx b/main/sw/inc/PostItMgr.hxx
index 3ad69ca..ca36518 100644
--- a/main/sw/inc/PostItMgr.hxx
+++ b/main/sw/inc/PostItMgr.hxx
@@ -282,10 +282,8 @@
 			sal_uInt16 SearchReplace(const SwFmtFld &pFld, const ::com::sun::star::util::SearchOptions& rSearchOptions,bool bSrchForward);
 			sal_uInt16 FinishSearchReplace(const ::com::sun::star::util::SearchOptions& rSearchOptions,bool bSrchForward);
 
-			//IAccessibility2 Implementation 2009-----
 			// get the PostIt window by index
 			sal_Int32 GetPostItCount() {return mvPostItFlds.size();};
-			//-----IAccessibility2 Implementation 2009
             void AssureStdModeAtShell();
 
             void ConnectSidebarWinToFrm( const SwFrm& rFrm,
diff --git a/main/sw/inc/access.hrc b/main/sw/inc/access.hrc
index c4f20b5..83d311f 100644
--- a/main/sw/inc/access.hrc
+++ b/main/sw/inc/access.hrc
@@ -48,7 +48,6 @@
 #define STR_ACCESS_ANNOTATION_BUTTON_NAME       (RC_ACCESS_BEGIN + 20)
 #define STR_ACCESS_ANNOTATION_BUTTON_DESC       (RC_ACCESS_BEGIN + 21)
 
-//IAccessibility2 Implementation 2009-----
 #define STR_ACCESS_PREVIEW_DOC_NAME				(RC_ACCESS_BEGIN + 22)
 //#define STR_ACCESS_PREVIEW_DOC_DESC			(RC_ACCESS_BEGIN + 23)
 #define STR_ACCESS_PREVIEW_DOC_SUFFIX			(RC_ACCESS_BEGIN + 24)
@@ -62,7 +61,6 @@
 #define STR_ACCESS_FORMULA_TYPE					(RC_ACCESS_BEGIN + 32)
 #define STR_ACCESS_FORMULA_TEXT					(RC_ACCESS_BEGIN + 33)
 #define STR_ACCESS_FORMULA_TOOLBAR				(RC_ACCESS_BEGIN + 34)
-//-----IAccessibility2 Implementation 2009
 
 #define ACCESS_ACT_END STR_ACCESS_FORMULA_TOOLBAR
 
diff --git a/main/sw/inc/accmap.hxx b/main/sw/inc/accmap.hxx
index 896e534..3b88563 100644
--- a/main/sw/inc/accmap.hxx
+++ b/main/sw/inc/accmap.hxx
@@ -32,14 +32,12 @@
 #include <tools/debug.hxx>
 #include <tools/fract.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <svx/AccessibleControlShape.hxx>
 #include <svx/AccessibleShape.hxx>
 #include "fesh.hxx"
 #include <vector>
 #include <set>
 class SwAccessibleParagraph;
-//-----IAccessibility2 Implementation 2009
 
 class ViewShell;
 class Rectangle;
@@ -122,7 +120,6 @@
 	void InvalidateCursorPosition(
 		const ::com::sun::star::uno::Reference<
 			::com::sun::star::accessibility::XAccessible>& rAcc );
-	//IAccessibility2 Implementation 2009-----
 	void DoInvalidateShapeSelection(sal_Bool bInvalidateFocusMode = sal_False);
 	
 	//Replace by DoInvalidateShapeSelection
@@ -133,7 +130,6 @@
 	SwAccessibleContextMap_Impl *mpSeletedFrmMap;
 	//IvalidateShapeInParaSelection() method is reponsible for the updating the selected states of the objects.
 	void InvalidateShapeInParaSelection();
-	//-----IAccessibility2 Implementation 2009
 
     void _InvalidateRelationSet( const SwFrm* pFrm, sal_Bool bFrom );
 
@@ -190,7 +186,6 @@
     {
         return mpVSh;
     }
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool IsInSameLevel(const SdrObject* pObj, const SwFEShell* pFESh);
 	void AddShapeContext(const SdrObject *pObj,
 							 ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessible > xAccShape);
@@ -198,7 +193,6 @@
 	void AddGroupContext(const SdrObject *pParentObj,
 					::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessible > xAccParent);
 	void RemoveGroupContext(const SdrObject *pParentObj, ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessible > xAccParent);
-	//-----IAccessibility2 Implementation 2009
 
     const SwRect& GetVisArea() const;
 
@@ -239,11 +233,9 @@
 
 	void InvalidateCursorPosition( const SwFrm *pFrm );
 	void InvalidateFocus();
-	//IAccessibility2 Implementation 2009-----
 	void FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage);
 	void FireSectionChangeEvent(sal_uInt16 nOldSection, sal_uInt16 nNewSection);
 	void FireColumnChangeEvent(sal_uInt16 nOldColumn, sal_uInt16 nNewColumn);
-	//-----IAccessibility2 Implementation 2009
 	void SetCursorContext(
 		const ::vos::ORef < SwAccessibleContext >& rCursorContext );
 
@@ -321,14 +313,12 @@
 		const long _nIndex,
 		const ::accessibility::AccessibleShapeTreeInfo& _rShapeTreeInfo
 	)	throw (::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	virtual ::accessibility::AccessibleControlShape* GetAccControlShapeFromModel
 		(::com::sun::star::beans::XPropertySet* pSet) 
 		throw (::com::sun::star::uno::RuntimeException);
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >   GetAccessibleCaption (
 		const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > & xShape)
     throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 
     // additional Core/Pixel conversions for internal use; also works
     // for preview
@@ -358,7 +348,6 @@
     */
     void GetMapMode( const Point& _rPoint,
                      MapMode&     _orMapMode ) const;
-//IAccessibility2 Implementation 2009-----
 public:
 	virtual sal_Bool IsDocumentSelAll();
 
@@ -369,6 +358,5 @@
     typedef std::set< SwAccessibleParagraph* >  SET_PARA;
     SET_PARA m_setParaAdd;
     SET_PARA m_setParaRemove;
-    //-----IAccessibility2 Implementation 2009
 };
 #endif
diff --git a/main/sw/inc/crsrsh.hxx b/main/sw/inc/crsrsh.hxx
index 2cc72a7..08ea0e8 100644
--- a/main/sw/inc/crsrsh.hxx
+++ b/main/sw/inc/crsrsh.hxx
@@ -868,13 +868,11 @@
     // is cursor or the point in/over a right to left formatted text?
     sal_Bool IsInRightToLeftText( const Point* pPt = 0 ) const;
 
-    //IAccessibility2 Implementation 2009-----
     void FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage);
 	SwFrm* oldColFrm;
 	bool   bColumnChange();
     void FireSectionChangeEvent(sal_uInt16 nOldSection, sal_uInt16 nNewSection);
     void FireColumnChangeEvent(sal_uInt16 nOldColumn, sal_uInt16 nNewColumn);
-    //-----IAccessibility2 Implementation 2009
     // If the current cursor position is inside a hidden range, the hidden range
     // is selected and true is returned:
     bool SelectHiddenRange();
diff --git a/main/sw/inc/doc.hxx b/main/sw/inc/doc.hxx
index a5b759d..3746c67 100644
--- a/main/sw/inc/doc.hxx
+++ b/main/sw/inc/doc.hxx
@@ -481,9 +481,7 @@
     bool mbClipBoard             : 1;    // true: this document represents the clipboard
     bool mbColumnSelection       : 1;    // true: this content has bee created by a column selection
                                          //       (clipboard docs only)
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool	bIsPrepareSelAll		:1;
-	//-----IAccessibility2 Implementation 2009
 
 #ifdef DBG_UTIL
     bool mbXMLExport : 1;                // sal_True: during XML export
@@ -704,7 +702,6 @@
      SwFmt *_MakeFrmFmt(const String &, SwFmt *, sal_Bool, sal_Bool );
      SwFmt *_MakeTxtFmtColl(const String &, SwFmt *, sal_Bool, sal_Bool );
 
-//IAccessibility2 Implementation 2009-----
 private:
 	sal_Bool bReadOnly;
 	String msDocAccTitle;
@@ -722,7 +719,6 @@
 	virtual sal_Bool getDocReadOnly() const { return bReadOnly; }
 	virtual void setDocAccTitle( const String& rTitle ) { msDocAccTitle = rTitle; }
 	virtual const String getDocAccTitle() const { return msDocAccTitle; }
-	//-----IAccessibility2 Implementation 2009
 
 	enum DocumentType {
 		DOCTYPE_NATIVE,
@@ -1063,14 +1059,12 @@
     bool InXMLExport() const            { return mbXMLExport; }
     void SetXMLExport( bool bFlag )     { mbXMLExport = bFlag; }
 #endif
-	//-----IAccessibility2 Implementation 2009
 	void SetSelAll( sal_Bool bSel ) 
 	{
 		bIsPrepareSelAll = bSel;
 	}
 	sal_Bool IsPrepareSelAll()  { return bIsPrepareSelAll; }
 	void SetPrepareSelAll() { bIsPrepareSelAll = sal_True; }
-	//IAccessibility2 Implementation 2009-----
 
     void SetContainsAtPageObjWithContentAnchor( const bool bFlag )
     {
diff --git a/main/sw/inc/docsh.hxx b/main/sw/inc/docsh.hxx
index fcd6bda..eb3f1dc 100644
--- a/main/sw/inc/docsh.hxx
+++ b/main/sw/inc/docsh.hxx
@@ -304,13 +304,11 @@
     // read by the binary filter:
     virtual void UpdateLinks();
     // <--
-	//IAccessibility2 Implementation 2009-----
 	virtual void setDocAccTitle( const String& rTitle );
 	virtual const String getDocAccTitle() const;
 
 	void setDocReadOnly( sal_Bool bReadOnly);
 	sal_Bool getDocReadOnly() const;
-	//-----IAccessibility2 Implementation 2009
     ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController >
                                 GetController();
 
diff --git a/main/sw/inc/fesh.hxx b/main/sw/inc/fesh.hxx
index b2839e1..4b99dd5 100644
--- a/main/sw/inc/fesh.hxx
+++ b/main/sw/inc/fesh.hxx
@@ -482,10 +482,8 @@
 	sal_uInt16 IsObjSelected() const;	//Liefert gleich die Anzahl der Objekte,
 									//zaehlt aber nicht die Objekte in Gruppen.
 	sal_Bool IsObjSelected( const SdrObject& rObj ) const;
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool IsObjSameLevelWithMarked(const SdrObject* pObj) const;
     const SdrMarkList* GetMarkList() const{ return _GetMarkList(); };
-    //-----IAccessibility2 Implementation 2009
 
 	void EndTextEdit();				//Loescht ggf. das Objekt.
 
diff --git a/main/sw/inc/fldbas.hxx b/main/sw/inc/fldbas.hxx
index b340c7c..fb1c4c0 100644
--- a/main/sw/inc/fldbas.hxx
+++ b/main/sw/inc/fldbas.hxx
@@ -138,7 +138,6 @@
     TYP_DROPDOWN,
 	TYP_END
 };
-//IAccessibility2 Implementation 2009-----
 enum SwAttrFieldTYpe
 {
 	ATTR_NONE,
@@ -149,7 +148,6 @@
 	ATTR_BOOKMARKFLD,
 	ATTR_SETREFATTRFLD
 };
-//-----IAccessibility2 Implementation 2009
 enum SwFileNameFormat
 {
 	FF_BEGIN,
diff --git a/main/sw/inc/frmfmt.hxx b/main/sw/inc/frmfmt.hxx
index 74a0890..b53ac2a 100644
--- a/main/sw/inc/frmfmt.hxx
+++ b/main/sw/inc/frmfmt.hxx
@@ -48,17 +48,13 @@
         ::com::sun::star::uno::XInterface> m_wXObject;
 
 protected:
-	//IAccessibility2 Implementation 2009-----
 	SwFrmFmt* pCaptionFmt;
-	//-----IAccessibility2 Implementation 2009
 	SwFrmFmt( SwAttrPool& rPool, const sal_Char* pFmtNm,
 				SwFrmFmt *pDrvdFrm, sal_uInt16 nFmtWhich = RES_FRMFMT,
 				const sal_uInt16* pWhichRange = 0 )
 	  	: SwFmt( rPool, pFmtNm, (pWhichRange ? pWhichRange : aFrmFmtSetRange),
 				pDrvdFrm, nFmtWhich )
-				//IAccessibility2 Implementation 2009-----
 				,pCaptionFmt( NULL )
-				//-----IAccessibility2 Implementation 2009
 	{}
 
 	SwFrmFmt( SwAttrPool& rPool, const String &rFmtNm,
@@ -66,9 +62,7 @@
 				const sal_uInt16* pWhichRange = 0 )
 	  	: SwFmt( rPool, rFmtNm, (pWhichRange ? pWhichRange : aFrmFmtSetRange),
 				pDrvdFrm, nFmtWhich )
-				//IAccessibility2 Implementation 2009-----
 				,pCaptionFmt( NULL )
-				//-----IAccessibility2 Implementation 2009
 	{}
 
    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNewValue );
@@ -137,11 +131,9 @@
     // <--
 
     virtual String GetDescription() const;
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool HasCaption() const;
 	void SetCaptionFmt(SwFrmFmt* pFmt);
 	SwFrmFmt* GetCaptionFmt() const;
-	//-----IAccessibility2 Implementation 2009	
 
     SW_DLLPRIVATE ::com::sun::star::uno::WeakReference<
         ::com::sun::star::uno::XInterface> const& GetXObject() const
@@ -159,10 +151,8 @@
 class SW_DLLPUBLIC SwFlyFrmFmt: public SwFrmFmt
 {
 	friend class SwDoc;
-	//IAccessibility2 Implementation 2009-----
 	String msTitle;
 	String msDesc;
-	//-----IAccessibility2 Implementation 2009
 
     // #i972:
     // it stores the previous position of Prt rectangle from RequestObjectResize
diff --git a/main/sw/inc/ndole.hxx b/main/sw/inc/ndole.hxx
index d184762..eb3c912 100644
--- a/main/sw/inc/ndole.hxx
+++ b/main/sw/inc/ndole.hxx
@@ -66,9 +66,7 @@
     const com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject > GetOleRef();
     svt::EmbeddedObjectRef& GetObject();
     const String& GetCurrentPersistName() const { return aName; }
-	//IAccessibility2 Implementation 2009-----
 	String GetStyleString();
-	//-----IAccessibility2 Implementation 2009
 	sal_Bool IsOleRef() const;	//Damit das Objekt nicht unnoetig geladen werden muss.
 #endif
 };
diff --git a/main/sw/inc/node.hxx b/main/sw/inc/node.hxx
index 23540fb..98d8f7a 100644
--- a/main/sw/inc/node.hxx
+++ b/main/sw/inc/node.hxx
@@ -442,12 +442,10 @@
 	 * Dokument. Die Contentframes werden aus dem entsprechenden
 	 * Layout ausgehaengt.
 	 */
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add an input param to identify if acc table should be disposed
 	//void DelFrms();
 	void DelFrms( sal_Bool bNeedDel = sal_False, sal_Bool bIsAccTableDispose = sal_True );
 	//void DelFrms(sal_Bool bNeedDel = sal_False);//added by zlcdl for al
-	//-----IAccessibility2 Implementation 2009
 
 	/*
 	 * liefert die Anzahl der Elemente des Inhalts des Nodes;
diff --git a/main/sw/inc/poolfmt.hrc b/main/sw/inc/poolfmt.hrc
index 56c8d85..8e75416 100644
--- a/main/sw/inc/poolfmt.hrc
+++ b/main/sw/inc/poolfmt.hrc
@@ -264,14 +264,12 @@
 #define STR_POOLNUMRULE_BUL3	   			(RC_POOLNUMRULE_BEGIN+  7)
 #define STR_POOLNUMRULE_BUL4	   			(RC_POOLNUMRULE_BEGIN+  8)
 #define STR_POOLNUMRULE_BUL5	   			(RC_POOLNUMRULE_BEGIN+  9)
-//IAccessibility2 Impplementaton 2009-----
 //Solution:Define column item's accessible name ID.
 #define STR_COLUMN_VALUESET_ITEM0		(RC_POOLNUMRULE_BEGIN + 10 )
 #define STR_COLUMN_VALUESET_ITEM1		(RC_POOLNUMRULE_BEGIN + 11 )
 #define STR_COLUMN_VALUESET_ITEM2		(RC_POOLNUMRULE_BEGIN + 12 )
 #define STR_COLUMN_VALUESET_ITEM3		(RC_POOLNUMRULE_BEGIN + 13 )
 #define STR_COLUMN_VALUESET_ITEM4		(RC_POOLNUMRULE_BEGIN + 14 )
-//-----IAccessibility2 Impplementaton 2009
 //-----------------
 // Paragraph styles
 //-----------------
diff --git a/main/sw/inc/tblsel.hxx b/main/sw/inc/tblsel.hxx
index 8bc23b0..749b5ee 100644
--- a/main/sw/inc/tblsel.hxx
+++ b/main/sw/inc/tblsel.hxx
@@ -177,11 +177,9 @@
 
 	void SetTableLines( const SwSelBoxes &rBoxes, const SwTable &rTable );
 	void SetTableLines( const SwTable &rTable );
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add an input param to identify if acc table should be disposed
 	//void DelFrms ( SwTable &rTable );
 	void DelFrms ( SwTable &rTable,sal_Bool bAccTableDispose = sal_False );
-	//-----IAccessibility2 Implementation 2009
 	void MakeFrms( SwTable &rTable );
 	void MakeNewFrms( SwTable &rTable, const sal_uInt16 nNumber,
 									   const sal_Bool bBehind );
diff --git a/main/sw/inc/unomap.hxx b/main/sw/inc/unomap.hxx
index 6979646..7f1c7c8 100644
--- a/main/sw/inc/unomap.hxx
+++ b/main/sw/inc/unomap.hxx
@@ -125,9 +125,7 @@
 #define PROPERTY_MAP_PARA_AUTO_STYLE                    96
 #define PROPERTY_MAP_FLDTYP_DOCINFO_CUSTOM				97
 #define PROPERTY_MAP_METAFIELD                          98
-//IAccessibility2 Implementation 2009-----
 #define PROPERTY_MAP_ACCESSIBILITY_TEXT_ATTRIBUTE		99
-//-----IAccessibility2 Implementation 2009
 #define PROPERTY_MAP_END                                100
 
 //S&E
diff --git a/main/sw/inc/viewsh.hxx b/main/sw/inc/viewsh.hxx
index 78f7df1..2c48371 100644
--- a/main/sw/inc/viewsh.hxx
+++ b/main/sw/inc/viewsh.hxx
@@ -353,9 +353,7 @@
     OutputDevice& GetRefDev() const;
     inline Window* GetWin()    const { return pWin; }
     inline OutputDevice* GetOut()     const { return pOut; }
-    //IAccessibility2 Implementation 2009-----
     void SetWin(Window* win) { pWin = win; }
-   //-----IAccessibility2 Implementation 2009
 	static inline sal_Bool IsLstEndAction() { return ViewShell::bLstAct; }
 
     //Andern alle PageDescriptoren
diff --git a/main/sw/source/core/access/acccell.cxx b/main/sw/source/core/access/acccell.cxx
index 30ea2ff..c8f70af 100644
--- a/main/sw/source/core/access/acccell.cxx
+++ b/main/sw/source/core/access/acccell.cxx
@@ -50,13 +50,11 @@
 
 #include <limits.h>
 
-//IAccessibility2 Implementation 2009-----
 #include <ndtxt.hxx>
 #include <editeng/brshitem.hxx>
 #include <swatrset.hxx>
 #include <frmatr.hxx>
 #include "acctable.hxx"
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::accessibility;
@@ -98,10 +96,8 @@
     DBG_ASSERT( pVSh, "no shell?" );
 	if( pVSh->ISA( SwCrsrShell ) )
 		rStateSet.AddState( AccessibleStateType::SELECTABLE );
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add resizable state to table cell.
 	rStateSet.AddState( AccessibleStateType::RESIZABLE );
-	//-----IAccessibility2 Implementation 2009
 
 	// SELECTED
 	if( IsSelected() )
@@ -125,12 +121,10 @@
 
 	bIsSelected = IsSelected();
 
-	//IAccessibility2 Implementation 2009-----
 	//Need not assign the pointer of accessible table object to m_pAccTable, 
 	//for it already done in SwAccessibleCell::GetTable(); Former codes:
 	//m_pAccTable= GetTable();
 	GetTable();
-	//-----IAccessibility2 Implementation 2009
 }
 
 sal_Bool SwAccessibleCell::_InvalidateMyCursorPos()
@@ -151,7 +145,6 @@
 	}
 
 	sal_Bool bChanged = bOld != bNew;
-	//IAccessibility2 Implementation 2009-----
 	if( bChanged )
 	{
 		FireStateChangedEvent( AccessibleStateType::SELECTED, bNew );
@@ -160,7 +153,6 @@
 			m_pAccTable->AddSelectionCell(this,bNew);
 		}
 	}	
-	//-----IAccessibility2 Implementation 2009
 	return bChanged;
 }
 
@@ -184,10 +176,8 @@
 				{
 					ASSERT( xAccImpl->GetFrm()->IsCellFrm(),
 						 	"table child is not a cell frame" )
-					//IAccessibility2 Implementation 2009-----
 					bChanged = static_cast< SwAccessibleCell *>( 
 							xAccImpl.getBodyPtr() )->_InvalidateMyCursorPos();
-					//-----IAccessibility2 Implementation 2009 
 				}
 				else
 					bChanged = sal_True; // If the context is not know we
@@ -208,7 +198,6 @@
 
 void SwAccessibleCell::_InvalidateCursorPos()
 {
-	//IAccessibility2 Implementation 2009-----
 	if (IsSelected())
 	{
 		const SwAccessibleChild aChild( GetChild( *(GetMap()), 0 ) );
@@ -254,7 +243,6 @@
 	{
 		m_pAccTable->FireSelectionEvent();
 	}		
-	//-----IAccessibility2 Implementation 2009
 }
 
 sal_Bool SwAccessibleCell::HasCursor()
@@ -325,7 +313,6 @@
 uno::Any SwAccessibleCell::queryInterface( const uno::Type& rType )
     throw( uno::RuntimeException )
 {
-	//IAccessibility2 Implementation 2009-----
 	if (rType == ::getCppuType((const uno::Reference<XAccessibleExtendedAttributes>*)0))
 	{
 		uno::Any aR; 
@@ -339,7 +326,6 @@
 		aR <<= uno::Reference<XAccessibleSelection>(this); 
 		return aR;
 	}
-	//-----IAccessibility2 Implementation 2009
     if ( rType == ::getCppuType( static_cast< uno::Reference< XAccessibleValue > * >( 0 ) ) )
     {
         uno::Reference<XAccessibleValue> xValue = this;
@@ -393,7 +379,6 @@
     return pCellFrm->GetTabBox()->GetFrmFmt();
 }
 
-//IAccessibility2 Implementation 2009-----
 //Implement TableCell currentValue
 uno::Any SwAccessibleCell::getCurrentValue( )
     throw( uno::RuntimeException )
@@ -428,7 +413,6 @@
 	}
     return aAny;
 }
-//-----IAccessibility2 Implementation 2009
 
 sal_Bool SwAccessibleCell::setCurrentValue( const uno::Any& aNumber )
     throw( uno::RuntimeException )
@@ -462,7 +446,6 @@
     return aAny;
 }
 
-//IAccessibility2 Implementation 2009-----
 ::rtl::OUString ReplaceOneChar(::rtl::OUString oldOUString, ::rtl::OUString replacedChar, ::rtl::OUString replaceStr)
 {
 	int iReplace = -1;
@@ -590,4 +573,3 @@
 	}
 	return m_pAccTable;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/acccell.hxx b/main/sw/source/core/access/acccell.hxx
index c88b219..ffe674c 100644
--- a/main/sw/source/core/access/acccell.hxx
+++ b/main/sw/source/core/access/acccell.hxx
@@ -26,7 +26,6 @@
 #include "acccontext.hxx"
 #include <com/sun/star/accessibility/XAccessibleValue.hpp>
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XAccessibleExtendedAttributes_HPP_
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
 #endif
@@ -34,7 +33,6 @@
 #ifndef _ACCSELECTIONHELPER_HXX_
 #include <accselectionhelper.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 class SwCellFrm;
 class SwAccessibleTable;
@@ -125,10 +123,8 @@
 	//=====  XAccessibleValue  ================================================
 
 	//=====  XAccessibleExtendedAttributes ================================================	
-	//IAccessibility2 Implementation 2009-----
 	::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-	//-----IAccessibility2 Implementation 2009
 private:
     SwFrmFmt* GetTblBoxFormat() const;
 
@@ -145,7 +141,6 @@
 
     virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue(  )
         throw (::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleComponent  ============================================
 	sal_Int32 SAL_CALL getBackground() 
 		throw (::com::sun::star::uno::RuntimeException);
@@ -179,7 +174,6 @@
 	SwAccessibleTable *GetTable();
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xTableReference;
 	SwAccessibleTable *m_pAccTable;
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/acccontext.cxx b/main/sw/source/core/access/acccontext.cxx
index 1599436..3f75715 100644
--- a/main/sw/source/core/access/acccontext.cxx
+++ b/main/sw/source/core/access/acccontext.cxx
@@ -60,11 +60,9 @@
 #include <acccontext.hxx>
 #include <svx/AccessibleShape.hxx>
 #include <comphelper/accessibleeventnotifier.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _ACCPARA_HXX
 #include "accpara.hxx"
 #endif
-//-----IAccessibility2 Implementation 2009
 #include <PostItMgr.hxx>
 
 using namespace sw::access;
@@ -230,11 +228,9 @@
                             "<SwAccessibleContext::ChildrenScrolled(..)> - always included child not considered!" );
                     const SwFrm* pLower( rLower.GetSwFrm() );
 					::vos::ORef< SwAccessibleContext > xAccImpl =
-						//IAccessibility2 Implementation 2009-----
 						//O is: GetMap()->GetContextImpl( pLower, SCROLLED_OUT == eAction ||
 						//						SCROLLED_IN == eAction );
 						GetMap()->GetContextImpl( pLower, sal_True );
-						//-----IAccessibility2 Implementation 2009
 					if( xAccImpl.isValid() )
 					{
 						switch( eAction )
@@ -265,7 +261,6 @@
                     ASSERT( !rLower.AlwaysIncludeAsChild(),
                             "<SwAccessibleContext::ChildrenScrolled(..)> - always included child not considered!" );
 					::vos::ORef< ::accessibility::AccessibleShape > xAccImpl =
-						//IAccessibility2 Implementation 2009-----
 						//O is:	GetMap()->GetContextImpl( rLower.GetSdrObject(),
 						//						  this,
 						//						  SCROLLED_OUT == eAction ||
@@ -273,7 +268,6 @@
                         GetMap()->GetContextImpl( rLower.GetDrawObject(),
 												  this,
 												  sal_True );
-						//-----IAccessibility2 Implementation 2009
 					if( xAccImpl.isValid() )
 					{
 						switch( eAction )
@@ -293,11 +287,9 @@
 								xAccImpl->ViewForwarderChanged(
 									::accessibility::IAccessibleViewForwarderListener::VISIBLE_AREA,
 									GetMap() );
-								//IAccessibility2 Implementation 2009-----
 								//Remove
 								//DisposeShape( rLower.GetDrawObject(),
 								//			  xAccImpl.getBodyPtr() );
-								//-----IAccessibility2 Implementation 2009
 							}
 							break;
 						case NONE:
@@ -406,11 +398,9 @@
 	// the child event. In this case no listener will exist.
 	FireStateChangedEvent( AccessibleStateType::SHOWING, sal_False );
 
-	//IAccessibility2 Implementation 2009-----
 	//Remove Dispose When scrolledout
 	// We now dispose the frame
 	//	Dispose( sal_True );
-	//-----IAccessibility2 Implementation 2009
 }
 
 // --> OD 2005-12-12 #i27301# - use new type definition for <_nStates>
@@ -546,14 +536,12 @@
 
 	// EDITABLE
 	if( bIsEditableState )
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Set editable state to graphic and other object when the document is editable
 	{
 		rStateSet.AddState( AccessibleStateType::EDITABLE );
 		rStateSet.AddState( AccessibleStateType::RESIZABLE );
 		rStateSet.AddState( AccessibleStateType::MOVEABLE );
 	}
-	//-----IAccessibility2 Implementation 2009
 	// ENABLED
 	rStateSet.AddState( AccessibleStateType::ENABLED );
 
@@ -589,12 +577,10 @@
     , nRole( nR )
     , bDisposing( sal_False )
     , bRegisteredAtAccessibleMap( true )
-    //IAccessibility2 Implementation 2009-----
     //Solution:Initialize the begin document load and IfAsynLoad to true
     , bBeginDocumentLoad( sal_True )
 	, isIfAsynLoad( sal_True )
 	, bIsSeletedInDoc( sal_False)
-	//-----IAccessibility2 Implementation 2009
 {
 	InitStates();
 	DBG_MSG_CD( "constructed" )
@@ -622,11 +608,9 @@
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
 	CHECK_FOR_DEFUNC( XAccessibleContext )
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Notify the frame is a document
 	if( nRole == AccessibleRole::DOCUMENT )		
 		bIsAccDocUse = sal_True;
-	//-----IAccessibility2 Implementation 2009
 
     return bDisposing ? 0 : GetChildCount( *(GetMap()) );
 }
@@ -639,11 +623,9 @@
 
 	CHECK_FOR_DEFUNC( XAccessibleContext )
 
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Notify the frame is a document
 	if( nRole == AccessibleRole::DOCUMENT )		
 		bIsAccDocUse = sal_True;
-	//-----IAccessibility2 Implementation 2009
 
     const SwAccessibleChild aChild( GetChild( *(GetMap()), nIndex ) );
 	if( !aChild.IsValid() )
@@ -660,7 +642,6 @@
 	{
 		::vos::ORef < SwAccessibleContext > xChildImpl(
 				GetMap()->GetContextImpl( aChild.GetSwFrm(), !bDisposing )  );
-		//IAccessibility2 Implementation 2009-----
 		//Solution:Send out accessible event when begin load.
 		if( bBeginDocumentLoad && nRole == AccessibleRole::DOCUMENT )
 		{
@@ -679,7 +660,6 @@
 			}
 			bBeginDocumentLoad = sal_False;
 		}
-		//-----IAccessibility2 Implementation 2009
 		if( xChildImpl.isValid() )
 		{
 			xChildImpl->SetParent( this );
@@ -789,10 +769,8 @@
 	::utl::AccessibleStateSetHelper *pStateSet =
 		new ::utl::AccessibleStateSetHelper;
 
-	//IAccessibility2 Implementation 2009-----
 	if( bIsSeletedInDoc )
 		pStateSet->AddState( AccessibleStateType::SELECTED );
-	//-----IAccessibility2 Implementation 2009
 
 	uno::Reference<XAccessibleStateSet> xStateSet( pStateSet );
 	GetStates( *pStateSet );
@@ -1065,9 +1043,7 @@
 sal_Int32 SAL_CALL SwAccessibleContext::getForeground()
 		throw (uno::RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	return COL_BLACK;
-	//-----IAccessibility2 Implementation 2009
 }
 
 sal_Int32 SAL_CALL SwAccessibleContext::getBackground()
@@ -1120,12 +1096,10 @@
 void SwAccessibleContext::ScrolledInShape( const SdrObject* ,
 								::accessibility::AccessibleShape *pAccImpl )
 {
-	//IAccessibility2 Implementation 2009-----
 	if(NULL == pAccImpl)
 	{
 		return ; 
 	}
-	//-----IAccessibility2 Implementation 2009
 	AccessibleEventObject aEvent;
 	aEvent.EventId = AccessibleEventId::CHILD;
 	uno::Reference< XAccessible > xAcc( pAccImpl );
@@ -1269,10 +1243,8 @@
         SwAccessibleChild( GetParent() ).IsVisibleChildrenOnly() )
 	{
 		// The frame is now invisible -> dispose it
-		//IAccessibility2 Implementation 2009-----
 		//Remove
 		//Dispose( sal_True );
-		//-----IAccessibility2 Implementation 2009
 	}
 	else
 	{
@@ -1676,7 +1648,6 @@
 	aStrm.Flush();
 }
 #endif
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwAccessibleContext::SetSelectedState(sal_Bool bSeleted)
 {
 	if(bIsSeletedInDoc != bSeleted)
@@ -1687,4 +1658,3 @@
 	}
 	return sal_False;
 };
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/acccontext.hxx b/main/sw/source/core/access/acccontext.hxx
index 74f6150..3fbe54a 100644
--- a/main/sw/source/core/access/acccontext.hxx
+++ b/main/sw/source/core/access/acccontext.hxx
@@ -98,10 +98,8 @@
     // <--
 
 	void InitStates();
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add a member to identify the firt time that document load
 	sal_Bool bBeginDocumentLoad;
-	//-----IAccessibility2 Implementation 2009
 
 protected:
 	void SetName( const ::rtl::OUString& rName ) { sName = rName; }
@@ -109,12 +107,10 @@
     {
         return nRole;
     }
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add a member to identify if the document is Asyn load.
     sal_Bool isIfAsynLoad;
 	//This flag is used to mark the object's selected state.
 	sal_Bool   bIsSeletedInDoc;
-	//-----IAccessibility2 Implementation 2009
 	void SetParent( SwAccessibleContext *pParent );
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> GetWeakParent() const;
 
@@ -181,9 +177,7 @@
 
 public:
 
-	//IAccessibility2 Implementation 2009-----
 	void SetMap(SwAccessibleMap *pM){pMap = pM;}
-	//-----IAccessibility2 Implementation 2009
 	void FireAccessibleEvent( ::com::sun::star::accessibility::AccessibleEventObject& rEvent );
 
 protected:
@@ -427,11 +421,9 @@
     {
         return Select( 0, pObj, bAdd );
     }
-	//IAccessibility2 Implementation 2009-----
 	//This method is used to updated the selected state and fire the selected state changed event.
 	virtual sal_Bool SetSelectedState(sal_Bool bSeleted);
 	sal_Bool  IsSeletedInDoc(){  return bIsSeletedInDoc; }
-	//-----IAccessibility2 Implementation 2009
 
     static ::rtl::OUString GetResource( sal_uInt16 nResId,
                                         const ::rtl::OUString *pArg1 = 0,
diff --git a/main/sw/source/core/access/accdoc.cxx b/main/sw/source/core/access/accdoc.cxx
index b82e797..ec9da85 100644
--- a/main/sw/source/core/access/accdoc.cxx
+++ b/main/sw/source/core/access/accdoc.cxx
@@ -45,7 +45,6 @@
 #endif
 #include <pagefrm.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <editeng/brshitem.hxx>
 #include <swatrset.hxx>
 #include <frmatr.hxx>
@@ -69,7 +68,6 @@
 #include <dview.hxx>
 #include <dcontact.hxx>
 #include <svx/svdmark.hxx>
-//-----IAccessibility2 Implementation 2009
 const sal_Char sServiceName[] = "com.sun.star.text.AccessibleTextDocumentView";
 const sal_Char sImplementationName[] = "com.sun.star.comp.Writer.SwAccessibleDocumentView";
 
@@ -203,7 +201,6 @@
 
 	for( sal_Int32 i=0; i < nCount; i++ )
 	{
-		//IAccessibility2 Implementation 2009-----
 		try
 		{
 			if( xAcc->getAccessibleChild( i ) == xThis )
@@ -213,7 +210,6 @@
 		{
 			return -1L;
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 	return -1L;
 }
@@ -224,7 +220,6 @@
 	return GetResource( STR_ACCESS_DOC_DESC );
 }
 
-//IAccessibility2 Implementation 2009-----
 OUString SAL_CALL SwAccessibleDocumentBase::getAccessibleName (void)
 		throw (::com::sun::star::uno::RuntimeException)
 {
@@ -255,12 +250,10 @@
 
 	return sAccName;
 }
-//-----IAccessibility2 Implementation 2009
 
 awt::Rectangle SAL_CALL SwAccessibleDocumentBase::getBounds()
 		throw (uno::RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	try
 	{
 		vos::OGuard aGuard(Application::GetSolarMutex());
@@ -279,7 +272,6 @@
 	{
 		return awt::Rectangle();
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -379,9 +371,7 @@
 
 	// MULTISELECTABLE
 	rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
-	//IAccessibility2 Implementation 2009-----
 	rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
-	//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -502,7 +492,6 @@
         uno::Reference<XAccessibleSelection> aSelect = this;
         aRet <<= aSelect;
     }
-    //IAccessibility2 Implementation 2009-----
     //Solution:Add XEventListener interface support.
 	else if ( (rType == ::getCppuType((uno::Reference<com::sun::star::document::XEventListener> *)NULL)) )
     {
@@ -519,7 +508,6 @@
 		uno::Reference<XAccessibleGetAccFlowTo> AccFlowTo = this;
         aRet <<= AccFlowTo;
     }
-    //-----IAccessibility2 Implementation 2009
     else
         aRet = SwAccessibleContext::queryInterface( rType );
     return aRet;
@@ -532,7 +520,6 @@
 	uno::Sequence< uno::Type > aTypes( SwAccessibleDocumentBase::getTypes() );
 
 	sal_Int32 nIndex = aTypes.getLength();
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Reset types memory alloc
 	//aTypes.realloc( nIndex + 1 );
 	aTypes.realloc( nIndex + 2 );
@@ -541,7 +528,6 @@
 	pTypes[nIndex] = ::getCppuType( static_cast< uno::Reference< XAccessibleSelection > * >( 0 ) );
 	//Solution:Add XEventListener interface support.
 	pTypes[nIndex + 1 ] = ::getCppuType( static_cast< uno::Reference< com::sun::star::document::XEventListener > * >( 0 ) );
-	//-----IAccessibility2 Implementation 2009
 	return aTypes;
 }
 
@@ -611,7 +597,6 @@
 {
     maSelectionHelper.deselectAccessibleChild( nChildIndex );
 }
-//IAccessibility2 Implementation 2009-----
 //Solution:Implement XEventListener interfaces
 void SAL_CALL SwAccessibleDocument::notifyEvent( const ::com::sun::star::document::EventObject& Event ) 
 			throw (::com::sun::star::uno::RuntimeException)
@@ -687,7 +672,6 @@
 		SwCntntFrm* pCurrFrm = pCrsrShell->GetCurrFrm();
 		SwPageFrm* pCurrPage=((SwFrm*)pCurrFrm)->FindPageFrm();
 		sal_uLong nLineNum = 0;
-		//IAccessibility2 Implementation 2009-----
 		SwTxtFrm* pTxtFrm = NULL;
 		SwTxtFrm* pCurrTxtFrm = NULL;
 		pTxtFrm = static_cast< SwTxtFrm* >(static_cast< SwPageFrm* > (pCurrPage)->ContainsCntnt());
@@ -777,7 +761,6 @@
 					++nLineNum;
 			}
 		}
-		//-----IAccessibility2 Implementation 2009
 		
 		sValue += sAttrName;
 		sValue += String::CreateFromInt32( nLineNum ) ;
@@ -891,10 +874,8 @@
 sal_Int32 SAL_CALL SwAccessibleDocument::getBackground() 
 		throw (::com::sun::star::uno::RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	vos::OGuard aGuard(Application::GetSolarMutex());
 	return SW_MOD()->GetColorConfig().GetColorValue( ::svtools::DOCCOLOR ).nColor;
-	//-----IAccessibility2 Implementation 2009
 }
 
 ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >
@@ -1022,4 +1003,3 @@
 	uno::Sequence< uno::Any > aEmpty;
 	return aEmpty;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accdoc.hxx b/main/sw/source/core/access/accdoc.hxx
index 9d703bc..fc705bb 100644
--- a/main/sw/source/core/access/accdoc.hxx
+++ b/main/sw/source/core/access/accdoc.hxx
@@ -26,7 +26,6 @@
 #include "acccontext.hxx"
 #endif
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/document/XEventListener.hpp>
 #include <accselectionhelper.hxx>
 
@@ -37,7 +36,6 @@
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLEGETACCFLOWTO_HPP_
 #include <com/sun/star/accessibility/XAccessibleGetAccFlowTo.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 class VclSimpleEvent;
 
@@ -92,9 +90,7 @@
     ///	Return this object's description.
 	virtual ::rtl::OUString SAL_CALL
     	getAccessibleDescription (void) throw (com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	virtual ::rtl::OUString SAL_CALL getAccessibleName (void) throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 
 	//=====  XAccessibleComponent  ==============================================
     virtual sal_Bool SAL_CALL containsPoint(
@@ -126,10 +122,8 @@
  */
 class SwAccessibleDocument : public	SwAccessibleDocumentBase,
                              public com::sun::star::accessibility::XAccessibleSelection,
-							 //IAccessibility2 Implementation 2009-----
                              public com::sun::star::document::XEventListener,
 							 public com::sun::star::accessibility::XAccessibleExtendedAttributes,
-							 //-----IAccessibility2 Implementation 2009
 							 public com::sun::star::accessibility::XAccessibleGetAccFlowTo
 {
     // Implementation for XAccessibleSelection interface
@@ -148,13 +142,11 @@
     SwAccessibleDocument( SwAccessibleMap* pInitMap );
 
 	DECL_LINK( WindowChildEventListener, VclSimpleEvent* );
-	//IAccessibility2 Implementation 2009-----
 	//=====  XEventListener====================================================
 	virtual void SAL_CALL notifyEvent( const ::com::sun::star::document::EventObject& Event ) 
 			throw (::com::sun::star::uno::RuntimeException);
 	virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Event ) 
 			throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 
 	//=====  XServiceInfo  ====================================================
 
@@ -225,7 +217,6 @@
         throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
                 ::com::sun::star::uno::RuntimeException );
 
-	//IAccessibility2 Implementation 2009-----
     virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
 	//====== thread safe C++ interface ========================================
@@ -241,7 +232,6 @@
 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >
 		SAL_CALL get_AccFlowTo(const ::com::sun::star::uno::Any& rAny, sal_Int32 nType)
 		throw ( ::com::sun::star::uno::RuntimeException );
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/sw/source/core/access/accembedded.cxx b/main/sw/source/core/access/accembedded.cxx
index d4afd4d..a57ec9d 100644
--- a/main/sw/source/core/access/accembedded.cxx
+++ b/main/sw/source/core/access/accembedded.cxx
@@ -31,14 +31,12 @@
 #include <rtl/uuid.h>
 #include <flyfrm.hxx>
 #include "accembedded.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "cntfrm.hxx"
 #include "ndole.hxx"
 #include <doc.hxx>
 #include <docsh.hxx>
 #include <../../ui/inc/wrtsh.hxx>
 #include <../../ui/inc/view.hxx>
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::lang;
@@ -59,7 +57,6 @@
 {
 }
 
-//IAccessibility2 Implementation 2009-----
 //=====  XInterface  ==========================================================
 com::sun::star::uno::Any SAL_CALL
     SwAccessibleEmbeddedObject::queryInterface (const com::sun::star::uno::Type & rType)
@@ -85,7 +82,6 @@
 {
     SwAccessibleNoTextFrame::release ();
 }
-//-----IAccessibility2 Implementation 2009
 
 OUString SAL_CALL SwAccessibleEmbeddedObject::getImplementationName()
         throw( uno::RuntimeException )
@@ -127,7 +123,6 @@
     }
     return aId;
 }
-//IAccessibility2 Implementation 2009-----
 //=====  XAccessibleExtendedAttributes  ========================================================
 ::com::sun::star::uno::Any SAL_CALL SwAccessibleEmbeddedObject::getExtendedAttributes() 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) 
@@ -154,4 +149,3 @@
 	strRet <<= style;
 	return strRet;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accembedded.hxx b/main/sw/source/core/access/accembedded.hxx
index 44b6893..58062a9 100644
--- a/main/sw/source/core/access/accembedded.hxx
+++ b/main/sw/source/core/access/accembedded.hxx
@@ -24,9 +24,7 @@
 #define _ACCEMBEDDED_HXX
 #include "accnotextframe.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
-//-----IAccessibility2 Implementation 2009
 class SwAccessibleEmbeddedObject : public	SwAccessibleNoTextFrame
 	        , public ::com::sun::star::accessibility::XAccessibleExtendedAttributes
 			
@@ -41,7 +39,6 @@
     SwAccessibleEmbeddedObject( SwAccessibleMap* pInitMap,
                                 const SwFlyFrm* pFlyFrm );
 
-	//IAccessibility2 Implementation 2009-----
     //=====  XInterface  ======================================================
     
     virtual com::sun::star::uno::Any SAL_CALL
@@ -55,7 +52,6 @@
     virtual void SAL_CALL
         release (void)
         throw ();
-	//-----IAccessibility2 Implementation 2009
 	//=====  XServiceInfo  ====================================================
 
     /**	Returns an identifier for the implementation of this object.
@@ -80,11 +76,9 @@
 	//=====  XTypeProvider  ====================================================
     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
 
-	//IAccessibility2 Implementation 2009-----
 	// ====== XAccessibleExtendedAttributes =====================================
 	    virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() 
 			throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/accfootnote.cxx b/main/sw/source/core/access/accfootnote.cxx
index 71dcf6b..58b2317 100644
--- a/main/sw/source/core/access/accfootnote.cxx
+++ b/main/sw/source/core/access/accfootnote.cxx
@@ -64,7 +64,6 @@
 
 	sal_uInt16 nResId = bIsEndnote ? STR_ACCESS_ENDNOTE_NAME
 								   : STR_ACCESS_FOOTNOTE_NAME;
-	//IAccessibility2 Implementation 2009-----
 	//OUString sArg( OUString::valueOf( nFootEndNote ) );
 	//old codes end
 	OUString sArg;
@@ -75,7 +74,6 @@
 		const SwDoc *pDoc = GetShell()->GetDoc();
 		sArg = pTxtFtn->GetFtn().GetViewNumStr( *pDoc );
 	}
-	//-----IAccessibility2 Implementation 2009
 
 	SetName( GetResource( nResId, &sArg ) );
 }
diff --git a/main/sw/source/core/access/accframe.cxx b/main/sw/source/core/access/accframe.cxx
index f881947..c9662f1 100644
--- a/main/sw/source/core/access/accframe.cxx
+++ b/main/sw/source/core/access/accframe.cxx
@@ -165,10 +165,8 @@
     if( SwAccessibleChildMap::IsSortingRequired( rFrm ) )
 	{
 		// We need a sorted list here
-		//IAccessibility2 Implementation 2009-----
         // const SwAccessibleChildMap aVisMap( rVisArea, rFrm, rAccMap );
         const SwAccessibleChildMap aVisMap( rFrm.PaintArea(), rFrm, rAccMap );
-		//-----IAccessibility2 Implementation 2009
         SwAccessibleChildMap::const_iterator aIter( aVisMap.begin() );
 		while( aIter != aVisMap.end() && !bFound )
 		{
@@ -195,10 +193,8 @@
 		// The unsorted list is sorted enough, because it return lower
 		// frames in the correct order.
 
-		//IAccessibility2 Implementation 2009-----
         // const SwAccessibleChildSList aVisList( rVisArea, rFrm, rAccMap );
         const SwAccessibleChildSList aVisList( rFrm.PaintArea(), rFrm, rAccMap );
-		//-----IAccessibility2 Implementation 2009
 
         SwAccessibleChildSList::const_iterator aIter( aVisList.begin() );
 		while( aIter != aVisList.end() && !bFound )
diff --git a/main/sw/source/core/access/accframe.hxx b/main/sw/source/core/access/accframe.hxx
index b523cbe..0cc8326 100644
--- a/main/sw/source/core/access/accframe.hxx
+++ b/main/sw/source/core/access/accframe.hxx
@@ -106,10 +106,8 @@
                        sal_Bool bIsPagePreview );
 	virtual ~SwAccessibleFrame();
 	
-	//IAccessibility2 Implementation 2009-----
 	// MT: Move to private area?
 	sal_Bool bIsAccDocUse;
-	//-----IAccessibility2 Implementation 2009
 	
 
 public:
diff --git a/main/sw/source/core/access/accframebase.cxx b/main/sw/source/core/access/accframebase.cxx
index c592f7f..8df0a1a 100644
--- a/main/sw/source/core/access/accframebase.cxx
+++ b/main/sw/source/core/access/accframebase.cxx
@@ -42,7 +42,6 @@
 #include "accmap.hxx"
 #include "accframebase.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _CRSRSH_HXX
 #include <crsrsh.hxx>
 #endif
@@ -61,7 +60,6 @@
 #ifndef _FMTANCHR_HXX
 #include <fmtanchr.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::accessibility;
 using ::rtl::OUString;
@@ -113,10 +111,8 @@
 		if( pWin && pWin->HasFocus() )
 			rStateSet.AddState( AccessibleStateType::FOCUSED );
 	}
-	//IAccessibility2 Implementation 2009-----
 	if( GetSelectedState() )
 		rStateSet.AddState( AccessibleStateType::SELECTED );
-	//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -190,7 +186,6 @@
 		Window *pWin = GetWindow();
 		if( pWin && pWin->HasFocus() && bNewSelected )
 			FireStateChangedEvent( AccessibleStateType::FOCUSED, bNewSelected );
-		//IAccessibility2 Implementation 2009-----
 		//FireStateChangedEvent( AccessibleStateType::SELECTED, bNewSelected );
 		if( pWin && pWin->HasFocus() && !bNewSelected )
 			FireStateChangedEvent( AccessibleStateType::FOCUSED, bNewSelected );
@@ -209,7 +204,6 @@
 				pAcc->FireAccessibleEvent( aEvent );
 			}
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 }
 
@@ -303,7 +297,6 @@
 
 	SwAccessibleContext::Dispose( bRecursive );
 }
-//IAccessibility2 Implementation 2009-----
 //Get the selection cursor of the document.
 SwPaM* SwAccessibleFrameBase::GetCrsr()
 {
@@ -331,12 +324,10 @@
 {
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
-	//IAccessibility2 Implementation 2009-----
 	if(GetMap()->IsDocumentSelAll())
 	{
 		return sal_True;
 	}
-	//-----IAccessibility2 Implementation 2009
 
 	// SELETED.
 	SwFlyFrm* pFlyFrm = getFlyFrm();
@@ -370,11 +361,9 @@
 					{
 						if( pAnchor.GetAnchorId() == FLY_AS_CHAR )
 						{
-                            //IAccessibility2 Implementation 2009-----
 							if( (nHere == nStartIndex) && (pIndex >= pStart->nContent.GetIndex()) || (nHere > nStartIndex) )
 								if( (nHere == nEndIndex) && (pIndex < pEnd->nContent.GetIndex()) || (nHere < nEndIndex) )
 								return sal_True;
-							//-----IAccessibility2 Implementation 2009
 						}
 						else if( pAnchor.GetAnchorId() == FLY_AT_PARA )
 						{
@@ -423,4 +412,3 @@
 	}
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accframebase.hxx b/main/sw/source/core/access/accframebase.hxx
index 0dd7cb3..d6a6e5b 100644
--- a/main/sw/source/core/access/accframebase.hxx
+++ b/main/sw/source/core/access/accframebase.hxx
@@ -23,11 +23,9 @@
 #ifndef _ACCFRAMEBASE_HXX
 #define _ACCFRAMEBASE_HXX
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _PAM_HXX
 #include <pam.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 #include <acccontext.hxx>
 
@@ -48,11 +46,9 @@
 	// This drived class additionaly sets SELECTABLE(1), SELECTED(+),
 	// FOCUSABLE(1) and FOCUSED(+)
 	virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
-	//IAccessibility2 Implementation 2009-----
 	SwFlyFrm* getFlyFrm() const;
 	sal_Bool GetSelectedState( );
 	SwPaM* GetCrsr();
-	//-----IAccessibility2 Implementation 2009
 
 	virtual void _InvalidateCursorPos();
 	virtual void _InvalidateFocus();
@@ -73,7 +69,6 @@
 	// The object is not visible an longer and should be destroyed
 	virtual void Dispose( sal_Bool bRecursive = sal_False );
 	virtual sal_Bool SetSelectedState( sal_Bool bSeleted );
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/accfrmobj.cxx b/main/sw/source/core/access/accfrmobj.cxx
index 37feccb..6753900 100644
--- a/main/sw/source/core/access/accfrmobj.cxx
+++ b/main/sw/source/core/access/accfrmobj.cxx
@@ -40,9 +40,7 @@
 #include <fmtanchr.hxx>
 #include <dcontact.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <pam.hxx>
-//-----IAccessibility2 Implementation 2009
 
 #include <vcl/window.hxx>
 
@@ -178,7 +176,6 @@
     return bRet;
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_uInt32 SwAccessibleChild::GetAnchorPosition() const
 {
 	if( mpDrawObj )
@@ -195,7 +192,6 @@
 	}
 	return 0;
 }
-//-----IAccessibility2 Implementation 2009
 
 SwAccessibleChild::SwAccessibleChild( const SwAccessibleChild& r )
     : mpFrm( r.mpFrm )
diff --git a/main/sw/source/core/access/accfrmobj.hxx b/main/sw/source/core/access/accfrmobj.hxx
index d8aa363..682955b 100644
--- a/main/sw/source/core/access/accfrmobj.hxx
+++ b/main/sw/source/core/access/accfrmobj.hxx
@@ -64,9 +64,7 @@
         bool IsAccessible( sal_Bool bPagePreview ) const;
         bool IsBoundAsChar() const;
         
-		//IAccessibility2 Implementation 2009-----
 		sal_uInt32 GetAnchorPosition() const; 
-		//-----IAccessibility2 Implementation 2009
 
         bool IsVisibleChildrenOnly() const;
         SwRect GetBox( const SwAccessibleMap& rAccMap ) const;
diff --git a/main/sw/source/core/access/accfrmobjmap.cxx b/main/sw/source/core/access/accfrmobjmap.cxx
index daa8906..40d06ad 100644
--- a/main/sw/source/core/access/accfrmobjmap.cxx
+++ b/main/sw/source/core/access/accfrmobjmap.cxx
@@ -163,96 +163,3 @@
              rFrm.GetDrawObjs() );
 }
 
-/* MT: The two insert methods had been introduced in the IA2 CWS (OOO310m11), but meanwhile we also have some in DEV300m80 (above)
-       Not sure if they have something which needs to be update in above methods.
-       Also, since there is no SwFrmOrObjMap CTOR anymore, the updated code in DEV300 might need some of the changes flagged with //IAccessibility2 Implementation 2009-----
-
-//IAccessibility2 Implementation 2009-----
-::std::pair< SwFrmOrObjMap::iterator, bool > SwFrmOrObjMap::insert( 
-		sal_uInt32 nOrd,  Point nPos, const SwFrmOrObj& rLower )
-{
-	SwFrmOrObjMapKey aKey( SwFrmOrObjMapKey::TEXT, nOrd, nPos );
-	value_type aEntry( aKey, rLower );
-	return _SwFrmOrObjMap::insert( aEntry );
-}
-
-::std::pair< SwFrmOrObjMap::iterator, bool > SwFrmOrObjMap::insert( 
-		const SdrObject *pObj, const SwFrmOrObj& rLower, const SwDoc *pDoc , Point nPos)
-{
-	if( !bLayerIdsValid )
-	{
-		nHellId = pDoc->GetHellId();
-		nControlsId = pDoc->GetControlsId();
-		bLayerIdsValid = sal_True;
-	}
-
-	SdrLayerID nLayer = pObj->GetLayer();
-	SwFrmOrObjMapKey::LayerId eLayerId = (nHellId == nLayer)
-					? SwFrmOrObjMapKey::HELL	
-					: ((nControlsId == nLayer) ? SwFrmOrObjMapKey::CONTROLS
-											   : SwFrmOrObjMapKey::HEAVEN);
-	SwFrmOrObjMapKey aKey( eLayerId, pObj->GetOrdNum(), nPos );
-	value_type aEntry( aKey, rLower );
-	return _SwFrmOrObjMap::insert( aEntry );
-}
-//-----IAccessibility2 Implementation 2009
-
-SwFrmOrObjMap::SwFrmOrObjMap(
-		const SwRect& rVisArea, const SwFrm *pFrm ) :
-	bLayerIdsValid( sal_False )
-{
-	SwFrmOrObj aFrm( pFrm );
-	sal_Bool bVisibleOnly = aFrm.IsVisibleChildrenOnly();
-
-	sal_uInt32 nPos = 0;
-	SwFrmOrObj aLower( pFrm->GetLower() );
-	while( aLower.GetSwFrm() )
-	{
-		//IAccessibility2 Implementation 2009-----
-		if( !bVisibleOnly || aLower.GetBox().IsOver( rVisArea ) )
-			insert( nPos++, aLower.GetBounds().Pos(), aLower );
-		//-----IAccessibility2 Implementation 2009
-		aLower = aLower.GetSwFrm()->GetNext();
-	}
-
-	if( pFrm->IsPageFrm() )
-	{
-		ASSERT( bVisibleOnly, "page frame within tab frame???" );
-		const SwPageFrm *pPgFrm =
-			static_cast< const SwPageFrm * >( pFrm );
-        const SwSortedObjs *pObjs = pPgFrm->GetSortedObjs();
-		if( pObjs )
-		{
-			const SwDoc *pDoc = pPgFrm->GetFmt()->GetDoc();
-			for( sal_uInt16 i=0; i<pObjs->Count(); i++ )
-			{
-                aLower = (*pObjs)[i]->GetDrawObj();
-				//IAccessibility2 Implementation 2009-----
-				if( aLower.GetBox().IsOver( rVisArea ) )
-					insert( aLower.GetSdrObject(), aLower, pDoc , aLower.GetBounds().Pos() ); 
-				//-----IAccessibility2 Implementation 2009
-			}
-		}
-	}
-	else if( pFrm->IsTxtFrm() )
-	{
-		const SwDoc *pDoc = static_cast< const SwTxtFrm * >( pFrm )->GetNode()
-																   ->GetDoc();
-        const SwSortedObjs *pObjs = pFrm->GetDrawObjs();
-		if( pObjs )
-		{
-			for( sal_uInt16 i=0; i<pObjs->Count(); i++ )
-			{
-                aLower = (*pObjs)[i]->GetDrawObj();
-				//IAccessibility2 Implementation 2009-----
-				if( aLower.IsBoundAsChar() &&
-					(!bVisibleOnly || aLower.GetBox().IsOver( rVisArea )) )
-					insert( aLower.GetSdrObject(), aLower, pDoc , Point(aLower.GetAnchorPosition(),0) );
-				//-----IAccessibility2 Implementation 2009
-			}
-		}
-	}
-}
-
-*/ 
-
diff --git a/main/sw/source/core/access/accfrmobjmap.hxx b/main/sw/source/core/access/accfrmobjmap.hxx
index ef47295..d3c83be 100644
--- a/main/sw/source/core/access/accfrmobjmap.hxx
+++ b/main/sw/source/core/access/accfrmobjmap.hxx
@@ -53,18 +53,15 @@
         , nPosNum( 0, 0 )
     {}
 
-//IAccessibility2 Implementation 2009-----
     inline SwAccessibleChildMapKey( LayerId eId, sal_uInt32 nOrd, Point nPos )
         : eLayerId( eId )
         , nOrdNum( nOrd )
         , nPosNum( nPos )
     {}
-//-----IAccessibility2 Implementation 2009    
 
     inline bool operator()( const SwAccessibleChildMapKey& r1,
                             const SwAccessibleChildMapKey& r2 ) const
     {
-//IAccessibility2 Implementation 2009-----
 //        return (r1.eLayerId == r2.eLayerId)
 //               ? (r1.nOrdNum < r2.nOrdNum)
 //               : (r1.eLayerId < r2.eLayerId);
@@ -73,11 +70,9 @@
 		   (r1.nPosNum.getY() == r2.nPosNum.getY()? r1.nPosNum.getX() < r2.nPosNum.getX() : 
 		   	r1.nPosNum.getY() < r2.nPosNum.getY()) ) :
 		   (r1.eLayerId < r2.eLayerId);
-//-----IAccessibility2 Implementation 2009    
     }
     
     /* MT: Need to get this position parameter stuff in dev300 somehow...
-	//IAccessibility2 Implementation 2009-----
 	//This methods are used to insert an object to the map, adding a position parameter.
 	::std::pair< iterator, bool > insert( sal_uInt32 nOrd, Point nPos, 
 										  const SwFrmOrObj& rLower );	
@@ -85,7 +80,6 @@
 								   	 	  const SwFrmOrObj& rLower,
 									   	  const SwDoc *pDoc,
 									   	  Point nPos);	
-	//-----IAccessibility2 Implementation 2009    
 	*/
 
 private:
@@ -93,9 +87,7 @@
     LayerId eLayerId;
     sal_uInt32 nOrdNum;
     
-	//IAccessibility2 Implementation 2009-----
 	Point nPosNum; 
-	//-----IAccessibility2 Implementation 2009
 
 };
 
diff --git a/main/sw/source/core/access/accgraphic.cxx b/main/sw/source/core/access/accgraphic.cxx
index 2743239..27cae61 100644
--- a/main/sw/source/core/access/accgraphic.cxx
+++ b/main/sw/source/core/access/accgraphic.cxx
@@ -33,11 +33,9 @@
 #include "accgraphic.hxx"
 
 using namespace ::com::sun::star;
-//IAccessibility2 Implementation 2009-----
 #ifndef _FMTURL_HXX //autogen
 #include <fmturl.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star::lang;
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::accessibility;
@@ -96,7 +94,6 @@
     }
     return aId;
 }
-//IAccessibility2 Implementation 2009-----
 //	Return this object's role.
 sal_Int16 SAL_CALL SwAccessibleGraphic::getAccessibleRole (void)
         throw (::com::sun::star::uno::RuntimeException)
@@ -107,4 +104,3 @@
 			return AccessibleRole::IMAGE_MAP ;
 		return AccessibleRole::GRAPHIC ;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accgraphic.hxx b/main/sw/source/core/access/accgraphic.hxx
index a59279e..b1ad4fe 100644
--- a/main/sw/source/core/access/accgraphic.hxx
+++ b/main/sw/source/core/access/accgraphic.hxx
@@ -59,10 +59,8 @@
 
 	//=====  XTypeProvider  ====================================================
     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	///	Return this object's role.
 	virtual sal_Int16 SAL_CALL getAccessibleRole (void) throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/accheaderfooter.cxx b/main/sw/source/core/access/accheaderfooter.cxx
index 907ee91..6d9ff79 100644
--- a/main/sw/source/core/access/accheaderfooter.cxx
+++ b/main/sw/source/core/access/accheaderfooter.cxx
@@ -140,7 +140,6 @@
     return aId;
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Int32 SAL_CALL SwAccessibleHeaderFooter::getBackground() 
 		throw (::com::sun::star::uno::RuntimeException)
 {
@@ -155,4 +154,3 @@
 	}
 	return SwAccessibleContext::getBackground();
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accheaderfooter.hxx b/main/sw/source/core/access/accheaderfooter.hxx
index 1dc3ca6..1316f76 100644
--- a/main/sw/source/core/access/accheaderfooter.hxx
+++ b/main/sw/source/core/access/accheaderfooter.hxx
@@ -74,11 +74,9 @@
 
 	//=====  XTypeProvider  ====================================================
     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleComponent  ============================================
 	sal_Int32 SAL_CALL getBackground() 
 		throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/acchyperlink.cxx b/main/sw/source/core/access/acchyperlink.cxx
index fccc83f..5b9b015 100644
--- a/main/sw/source/core/access/acchyperlink.cxx
+++ b/main/sw/source/core/access/acchyperlink.cxx
@@ -32,7 +32,6 @@
 #include <accpara.hxx>
 #include <acchyperlink.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <comphelper/processfactory.hxx>
 #ifndef _COM_SUN_STAR_FRAME_XDESKTOP_HPP_
 #include <com/sun/star/frame/XDesktop.hpp>
@@ -43,7 +42,6 @@
 #ifndef _COM_SUN_STAR_DOCUMENT_XLINKTARGETSUPPLIER_HPP_
 #include <com/sun/star/document/XLinkTargetSupplier.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::accessibility;
@@ -92,12 +90,10 @@
 
 	sal_Bool bRet = sal_False;
 
-	//IAccessibility2 Implementation 2009-----
 	if(nIndex != 0)
 		throw new IndexOutOfBoundsException;
 	const SwTxtAttr *pTxtAttr = GetTxtAttr();
 	if( pTxtAttr /*&& 0 == nIndex*/ ) 
-	//-----IAccessibility2 Implementation 2009
 	{
 		const SwFmtINetFmt& rINetFmt = pTxtAttr->GetINetFmt();
 		if( rINetFmt.GetValue().Len() )
@@ -129,7 +125,6 @@
 {
 	OUString sDesc;
 
-	//IAccessibility2 Implementation 2009-----
 	if(nIndex != 0)
 		throw new IndexOutOfBoundsException;
 	const SwTxtAttr *pTxtAttr = GetTxtAttr();
@@ -138,7 +133,6 @@
 		const SwFmtINetFmt& rINetFmt = pTxtAttr->GetINetFmt();
 		sDesc = OUString( rINetFmt.GetValue() );
 	}
-	//-----IAccessibility2 Implementation 2009
 	return sDesc;
 }
 
@@ -148,9 +142,7 @@
 {
 	uno::Reference< XAccessibleKeyBinding > xKeyBinding;
 
-	//IAccessibility2 Implementation 2009-----
 	if( isValid() /*&& 0 == nIndex*/ ) 
-	//-----IAccessibility2 Implementation 2009
 	{
 		::comphelper::OAccessibleKeyBindingHelper* pKeyBindingHelper =
 		   	new ::comphelper::OAccessibleKeyBindingHelper();
@@ -173,14 +165,12 @@
 		throw (lang::IndexOutOfBoundsException, uno::RuntimeException)
 {
 	uno::Any aRet;
-	//IAccessibility2 Implementation 2009-----
 	if(nIndex != 0)
 		throw new IndexOutOfBoundsException;
 	//End Added.	
 	::rtl::OUString text = OUString( xPara->GetString() );
 	::rtl::OUString retText =  text.copy(nStartIdx, nEndIdx - nStartIdx);
 	aRet <<= retText;
-	//-----IAccessibility2 Implementation 2009
 	return aRet;
 }
 
@@ -188,7 +178,6 @@
             sal_Int32 nIndex ) 
 	throw (lang::IndexOutOfBoundsException, uno::RuntimeException)
 {
-	//IAccessibility2 Implementation 2009-----
 	if(nIndex != 0)
 		throw new IndexOutOfBoundsException;
 	//End Added.
@@ -202,7 +191,6 @@
 	uno::Any aRet;
 	aRet <<= retText;
 	return aRet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 sal_Int32 SAL_CALL SwAccessibleHyperlink::getStartIndex() 
@@ -221,7 +209,6 @@
 		throw (uno::RuntimeException)
 {
 	vos::OGuard aGuard(Application::GetSolarMutex());
-	//IAccessibility2 Implementation 2009-----
 	//	return xPara.isValid();
 	if (xPara.isValid())
 	{
@@ -271,7 +258,6 @@
 		}
 	}//xpara valid
 	return sal_False;
-	//-----IAccessibility2 Implementation 2009
 }
 
 void SwAccessibleHyperlink::Invalidate()
diff --git a/main/sw/source/core/access/accmap.cxx b/main/sw/source/core/access/accmap.cxx
index 53c81ce..ab85051 100644
--- a/main/sw/source/core/access/accmap.cxx
+++ b/main/sw/source/core/access/accmap.cxx
@@ -61,7 +61,6 @@
 #include <IDocumentDrawModelAccess.hxx>
 #include <svx/ShapeTypeHandler.hxx>
 #include <vcl/svapp.hxx>
-//IAccessibility2 Implementation 2009-----
 #ifndef _SVX_ACCESSIBILITY_SHAPE_TYPE_HANDLER_HXX
 #include <svx/ShapeTypeHandler.hxx>
 #endif
@@ -294,9 +293,7 @@
 		{
 			const SdrObject *pObj = (*aIter).first;
 			uno::Reference < XAccessible > xAcc( (*aIter).second );
-			//IAccessibility2 Implementation 2009-----
 			if( nSelShapes && pFESh &&pFESh->IsObjSelected( *pObj ) )
-			//-----IAccessibility2 Implementation 2009
 			{
 				// selected objects are inserted from the back
 				--pSelShape;
@@ -352,14 +349,12 @@
 	SwAccessibleEvent_Impl& operator==( const SwAccessibleEvent_Impl& );
 
 public:
-	//IAccessibility2 Implementation 2009-----
 	const SwFrm* mpParentFrm;	// The object that fires the event
 	sal_Bool IsNoXaccParentFrm() const 
 	{
 		return CHILD_POS_CHANGED == meType && mpParentFrm != 0;
 	}
 	uno::WeakReference < XAccessible > GetxAcc() const { return mxAcc;}
-	//-----IAccessibility2 Implementation 2009
 public:
     SwAccessibleEvent_Impl( EventType eT,
                             SwAccessibleContext *pA,
@@ -422,7 +417,6 @@
 				"wrong event constructor, CARET_OR_STATES only" );
 	}
 
-	//IAccessibility2 Implementation 2009-----
 	SwAccessibleEvent_Impl( EventType eT, 
                                 const SwFrm *pParentFrm,
 				const SwAccessibleChild& rFrmOrObj, 
@@ -436,7 +430,6 @@
 		OSL_ENSURE( SwAccessibleEvent_Impl::CHILD_POS_CHANGED == meType,
 			"wrong event constructor, CHILD_POS_CHANGED only" );
 	}
-	//-----IAccessibility2 Implementation 2009
     // <SetType(..)> only used in method <SwAccessibleMap::AppendEvent(..)>
     inline void SetType( EventType eT )
     {
@@ -540,7 +533,6 @@
     {
         return mbFiring;
     }
-	//IAccessibility2 Implementation 2009-----
 	struct XAccisNULL
 	{
 		bool operator()(const SwAccessibleEvent_Impl& e)
@@ -549,10 +541,8 @@
 		}
 	};
 	void MoveInvalidXAccToEnd();
-	//-----IAccessibility2 Implementation 2009
 };
 
-//IAccessibility2 Implementation 2009-----
 void SwAccessibleEventList_Impl::MoveInvalidXAccToEnd()
 {
 	int nSize = size();
@@ -580,7 +570,6 @@
 	insert(end(),lstEvent.begin(),lstEvent.end());
 	OSL_ENSURE(size() == nSize ,"");
 }
-//-----IAccessibility2 Implementation 2009
 //------------------------------------------------------------------------------
 // The shape list is filled if an accessible shape is destroyed. It
 // simply keeps a reference to the accessible shape's XShape. These
@@ -911,7 +900,6 @@
 void SwAccessibleMap::FireEvent( const SwAccessibleEvent_Impl& rEvent )
 {
 	::vos::ORef < SwAccessibleContext > xAccImpl( rEvent.GetContext() );
-	//IAccessibility2 Implementation 2009-----
 	if (!xAccImpl.isValid() && rEvent.mpParentFrm != 0 )
 	{
 		SwAccessibleContextMap_Impl::iterator aIter =
@@ -929,7 +917,6 @@
 			}			
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	if( SwAccessibleEvent_Impl::SHAPE_SELECTION == rEvent.GetType() )
 	{
 		DoInvalidateShapeSelection();
@@ -1147,7 +1134,6 @@
 		DoInvalidateShapeSelection();
 	}
 }
-//IAccessibility2 Implementation 2009-----
 //This method should implement the following functions:
 //1.find the shape objects and set the selected state.
 //2.find the Swframe objects and set the selected state.
@@ -1161,8 +1147,7 @@
 	const ViewShell *pVSh = GetShell();
 	const SwFEShell *pFESh = pVSh->ISA( SwFEShell ) ?
 							static_cast< const SwFEShell * >( pVSh ) : 0;
-	SwPaM* pCrsr = pFESh ? pFESh->GetCrsr( sal_False /* ??? */ ) : NULL;//IAccessibility2 Implementation 2009
-
+	SwPaM* pCrsr = pFESh ? pFESh->GetCrsr( sal_False /* ??? */ ) : NULL;
 	//sal_uInt16 nSelShapes = pFESh ? pFESh->IsObjSelected() : 0;
 
 	{
@@ -1546,7 +1531,6 @@
 					else
 						pShape->second->ResetState( AccessibleStateType::FOCUSED );
 
-					// IA2 CWS:
 					if(pShape->second->SetState( AccessibleStateType::SELECTED ))
 					{
 						vecxShapeAdd.push_back(pShape->second);
@@ -1575,7 +1559,7 @@
 			++pShape;
 		}
 
-		const int SELECTION_WITH_NUM =10;
+		const unsigned int SELECTION_WITH_NUM = 10;
 		if (vecxShapeAdd.size() > SELECTION_WITH_NUM )
 		{
 			uno::Reference< XAccessible > xDoc = GetDocumentView( );
@@ -1703,7 +1687,6 @@
 	}
 }
 */
-//-----IAccessibility2 Implementation 2009
 
 SwAccessibleMap::SwAccessibleMap( ViewShell *pSh ) :
 	mpFrmMap( 0  ),
@@ -1720,7 +1703,7 @@
 	mnFootnote( 1 ),
 	mnEndnote( 1 ),
 	mbShapeSelected( sal_False ),
-	mpSeletedFrmMap(NULL)//IAccessibility2 Implementation 2009
+	mpSeletedFrmMap(NULL)
 {
 	pSh->GetLayout()->AddAccessibleShell();
 }
@@ -1741,7 +1724,6 @@
 		}
 	}
 
-	//IAccessibility2 Implementation 2009-----
 	if(xAcc.is())
 	{
 	SwAccessibleDocument *pAcc =
@@ -1762,7 +1744,6 @@
 			++aIter;
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	{
 		vos::OGuard aGuard( maMutex );
 #ifdef DBG_UTIL
@@ -1843,7 +1824,7 @@
 		mpEvents = 0;
 	}
 	mpVSh->GetLayout()->RemoveAccessibleShell();
-	delete mpSeletedFrmMap;//IAccessibility2 Implementation 2009
+	delete mpSeletedFrmMap;
 }
 
 uno::Reference< XAccessible > SwAccessibleMap::_GetDocumentView(
@@ -2130,10 +2111,8 @@
 					}
 					// TODO: focus!!!
 				}
-				//IAccessibility2 Implementation 2009-----
 				if (xAcc.is())
 					AddGroupContext(pObj, xAcc);
-				//-----IAccessibility2 Implementation 2009
 			}
 		}
 	}
@@ -2144,7 +2123,6 @@
 
 	return xAcc;
 }
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwAccessibleMap::IsInSameLevel(const SdrObject* pObj, const SwFEShell* pFESh)
 {
 	if (pFESh)
@@ -2242,7 +2220,6 @@
 		}
 	}				
 }
-//-----IAccessibility2 Implementation 2009
 
 ::vos::ORef < ::accessibility::AccessibleShape > SwAccessibleMap::GetContextImpl(
 			const SdrObject *pObj,
@@ -2305,7 +2282,6 @@
 			mpShapeMap->find( pObj );
 		if( aIter != mpShapeMap->end() )
 		{
-			//IAccessible2 Implementation 2009 ----
 			uno::Reference < XAccessible > xAcc( (*aIter).second );
 			mpShapeMap->erase( aIter );
 			RemoveGroupContext(pObj, xAcc);
@@ -2314,7 +2290,6 @@
 			// that is selected.
 			
 			if( mpShapeMap && mpShapeMap->empty() )
-			//---- IAccessible2 Implementation 2009
 			{
 				delete mpShapeMap;
 				mpShapeMap = 0;
@@ -2461,7 +2436,7 @@
 	{
 		::vos::ORef< SwAccessibleContext > xAccImpl;
 		::vos::ORef< SwAccessibleContext > xParentAccImpl;
-		const SwFrm *pParent =NULL; //IAccessibility2 Implementation 2009
+		const SwFrm *pParent =NULL;
 		{
 			vos::OGuard aGuard( maMutex );
 
@@ -2484,8 +2459,7 @@
 				{
 					// Otherwise we look if the parent is accessible.
 					// If not, there is nothing to do.
-					pParent = //IAccessibility2 Implementation 2009
-						SwAccessibleFrame::GetParent( aFrmOrObj,
+					pParent = SwAccessibleFrame::GetParent( aFrmOrObj,
                                                       GetShell()->IsPreView());
 
 					if( pParent )
@@ -2534,7 +2508,6 @@
 														  rOldBox );
 			}
 		}
-		//IAccessibility2 Implementation 2009-----
 		else if(pParent)
 		{
 /*
@@ -2581,7 +2554,6 @@
 			}
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 void SwAccessibleMap::InvalidateContent( const SwFrm *pFrm )
@@ -2716,7 +2688,6 @@
 				mpFrmMap->find( aFrmOrObj.GetSwFrm() );
 			if( aIter != mpFrmMap->end() )
 				xAcc = (*aIter).second;
-			//IAccessibility2 Implementation 2009-----
 			else
 			{
 				SwRect rcEmpty;
@@ -2738,7 +2709,6 @@
 					xAcc = (*aIter).second;
 				}
 			}
-			//-----IAccessibility2 Implementation 2009
 
 			// For cells, some extra thoughts are necessary,
 			// because invalidating the cursor for one cell
@@ -2767,7 +2737,6 @@
 					xAcc = GetContext( aFrmOrObj.GetSwFrm(), sal_True );
 			}
 		}
-        //IAccessibility2 Implementation 2009-----
         else if (bShapeSelected)
         {
             const SwFEShell *pFESh = pVSh ? static_cast< const SwFEShell * >( pVSh ) : NULL ;
@@ -2885,10 +2854,8 @@
 			pAccPara->FireAccessibleEvent( aEvent );
 		}
 	}
-    //-----IAccessibility2 Implementation 2009
 }
 
-//IAccessibility2 Implementation 2009-----
 //Notify the page change event to bridge. 
 void SwAccessibleMap::FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage)
 {
@@ -2944,11 +2911,9 @@
 		}
     	}
 }
-//-----IAccessibility2 Implementation 2009
 
 void SwAccessibleMap::InvalidateFocus()
 {
-	//IAccessibility2 Implementation 2009-----
 	if(GetShell()->IsPreView())
 	{
 		uno::Reference<XAccessible> xAcc = _GetDocumentView( sal_True );
@@ -2962,7 +2927,6 @@
 			}			
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	uno::Reference < XAccessible > xAcc;
 	sal_Bool bShapeSelected;
 	{
@@ -2978,12 +2942,10 @@
 			static_cast< SwAccessibleContext *>( xAcc.get() );
 		pAccImpl->InvalidateFocus();
 	}
-	//IAccessibility2 Implementation 2009-----
 	else
 	{
 		DoInvalidateShapeSelection(sal_True);
 	}
-	//-----IAccessibility2 Implementation 2009 
 }
 
 void SwAccessibleMap::SetCursorContext(
@@ -3266,9 +3228,7 @@
 		if( mpEvents )
 		{
 			mpEvents->SetFiring();
-			//IAccessibility2 Implementation 2009-----
 			mpEvents->MoveInvalidXAccToEnd();
-			//-----IAccessibility2 Implementation 2009
 			SwAccessibleEventList_Impl::iterator aIter = mpEvents->begin();
 			while( aIter != mpEvents->end() )
 			{
@@ -3459,7 +3419,6 @@
 	return sal_True;
 }
 
-//IAccessibility2 Implementation 2009-----
 //Get the accessible control shape from the model object, here model object is with XPropertySet type
 ::accessibility::AccessibleControlShape * SwAccessibleMap::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException)
 {
@@ -3544,7 +3503,6 @@
 			return NULL;
 
 }
-//-----IAccessibility2 Implementation 2009
 Point SwAccessibleMap::PixelToCore( const Point& rPoint ) const
 {
 	Point aPoint;
@@ -3870,10 +3828,8 @@
            : GetShell()->VisArea();
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwAccessibleMap::IsDocumentSelAll()
 {
 	return GetShell()->GetDoc()->IsPrepareSelAll();
 }
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sw/source/core/access/accnotextframe.cxx b/main/sw/source/core/access/accnotextframe.cxx
index 9ad2334..e7b039d 100644
--- a/main/sw/source/core/access/accnotextframe.cxx
+++ b/main/sw/source/core/access/accnotextframe.cxx
@@ -39,7 +39,6 @@
 #include <hints.hxx>
 // <--
 #include "accnotextframe.hxx"
-//IAccessibility2 Implementation 2009-----
 #include <fmturl.hxx>
 #include <accnotexthyperlink.hxx>
 #include <svtools/imap.hxx>
@@ -52,7 +51,6 @@
 using namespace ::com::sun::star::accessibility;
 using ::rtl::OUString;
 using utl::AccessibleRelationSetHelper;
-//-----IAccessibility2 Implementation 2009
 
 const SwNoTxtNode *SwAccessibleNoTextFrame::GetNoTxtNode() const
 {
@@ -62,13 +60,11 @@
 	{
 		const SwCntntFrm *pCntFrm =
 			static_cast<const SwCntntFrm *>( pFlyFrm->Lower() );
-		//IAccessibility2 Implementation 2009-----
 		const SwCntntNode* pSwCntntNode = pCntFrm->GetNode();
 		if(pSwCntntNode != NULL)
 		{
 			pNd = pSwCntntNode->GetNoTxtNode();
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 
 	return pNd;
@@ -219,12 +215,10 @@
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
 	CHECK_FOR_DEFUNC( XAccessibleContext )
-	//IAccessibility2 Implementation 2009-----
 	// OUString longDesc;	
 	// const SwFlyFrmFmt* pFlyFmt = GetShell()->GetDoc()->FindFlyByName( GetName(), 0);
 	// longDesc = OUString( pFlyFmt->GetLongDescription() );
 	// return  longDesc; MT: Do not return longDesc, which still is empty - why was the line above commented out?
-	//-----IAccessibility2 Implementation 2009
 
     return msDesc;
 }
@@ -246,7 +240,6 @@
         aAny <<= xImage;
         return aAny;
     }
-	//IAccessibility2 Implementation 2009-----
 	else if ( aType == ::getCppuType((uno::Reference<XAccessibleHypertext> *)0) )
     {
 		uno::Reference<XAccessibleHypertext> aAccHypertext = this;
@@ -254,7 +247,6 @@
 		aAny <<= aAccHypertext;
 		return aAny;
     }
-	//-----IAccessibility2 Implementation 2009
     else
         return SwAccessibleContext::queryInterface( aType );
 }
@@ -300,7 +292,6 @@
 {
     return getSize().Width;
 }
-//IAccessibility2 Implementation 2009-----
 //=====  XAccesibleText  ==================================================
 sal_Int32 SAL_CALL SwAccessibleNoTextFrame::getCaretPosition(  ) throw (::com::sun::star::uno::RuntimeException){return 0;}
 sal_Bool SAL_CALL SwAccessibleNoTextFrame::setCaretPosition( sal_Int32 ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException){return 0;}
@@ -433,4 +424,3 @@
 	
 	return pHelper;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accnotextframe.hxx b/main/sw/source/core/access/accnotextframe.hxx
index 8f2ca77..6a04d92 100644
--- a/main/sw/source/core/access/accnotextframe.hxx
+++ b/main/sw/source/core/access/accnotextframe.hxx
@@ -24,7 +24,6 @@
 #define _ACCNOTEXTFRAME_HXX
 #include "accframebase.hxx"
 #include <com/sun/star/accessibility/XAccessibleImage.hpp>
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLEHYPERTEXT_HPP_
 #include <com/sun/star/accessibility/XAccessibleHypertext.hpp>
 #endif
@@ -37,17 +36,14 @@
 class SwFlyFrm;
 class SwNoTxtNode;
 class SwAccessibleNoTextHyperlink;
-//-----IAccessibility2 Implementation 2009
 
 class SwAccessibleNoTextFrame : public	SwAccessibleFrameBase,
                                 public ::com::sun::star::accessibility::XAccessibleImage,
                                 public ::com::sun::star::accessibility::XAccessibleHypertext//Added by yangzhh for HyperLink
 {
-	//IAccessibility2 Implementation 2009-----
 	friend class SwAccessibleNoTextHyperlink;
 	//HyperLinksMap alinksMap;
 	com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleHyperlink > alink;
-	//-----IAccessibility2 Implementation 2009
 	SwDepend		aDepend;
     // --> OD 2009-07-14 #i73249#
     ::rtl::OUString msTitle;
@@ -118,7 +114,6 @@
 	// The object is not visible an longer and should be destroyed
 	virtual void Dispose( sal_Bool bRecursive = sal_False );
 
-	//IAccessibility2 Implementation 2009-----
     virtual sal_Int32 SAL_CALL getCaretPosition(  ) throw (::com::sun::star::uno::RuntimeException);
     virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
     virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);//Shen Zhen Jie changed sal_Unicode to sal_uInt32
@@ -161,7 +156,6 @@
             ::com::sun::star::accessibility::XAccessibleRelationSet> SAL_CALL
     	getAccessibleRelationSet (void)
         throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/accpara.cxx b/main/sw/source/core/access/accpara.cxx
index 69bd882..c420861 100644
--- a/main/sw/source/core/access/accpara.cxx
+++ b/main/sw/source/core/access/accpara.cxx
@@ -75,7 +75,6 @@
 #include <acchypertextdata.hxx>
 #include <unotools/accessiblerelationsethelper.hxx>
 #include <com/sun/star/accessibility/AccessibleRelationType.hpp>
-//IAccessibility2 Implementation 2009-----
 #include <section.hxx>
 #include <doctxm.hxx>
 #include <comphelper/accessibletexthelper.hxx>
@@ -98,7 +97,6 @@
 #include <unosett.hxx>
 #include <paratr.hxx>
 #include <com/sun/star/container/XIndexReplace.hpp>
-//-----IAccessibility2 Implementation 2009
 // --> OD 2006-07-12 #i63870#
 #include <unomap.hxx>
 #include <unoprnms.hxx>
@@ -183,7 +181,6 @@
             // same node? Then check whether it's also within 'our' part
             // of the paragraph
             sal_uInt16 nIndex = pPoint->nContent.GetIndex();
-			//IAccessibility2 Implementation 2009-----
 			if(!GetPortionData().IsValidCorePosition( nIndex ) ||
 				( GetPortionData().IsZeroCorePositionData() && nIndex== 0) )
 			{
@@ -195,7 +192,6 @@
 					UpdatePortionData();
 				}
 			}
-			//-----IAccessibility2 Implementation 2009
             if( GetPortionData().IsValidCorePosition( nIndex ) )
             {
                 // Yes, it's us!
@@ -440,7 +436,6 @@
             aEvent.OldValue, aEvent.NewValue );
 
 		FireAccessibleEvent( aEvent );
-		//IAccessibility2 Implementation 2009-----
 		uno::Reference< XAccessible > xparent = getAccessibleParent();
 		uno::Reference< XAccessibleContext > xAccContext(xparent,uno::UNO_QUERY);
 		if (xAccContext.is() && xAccContext->getAccessibleRole() == AccessibleRole::TABLE_CELL)
@@ -453,7 +448,6 @@
 				pPara->FireAccessibleEvent(aParaEvent);
 			}
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 	else if( !bVisibleDataFired )
 	{
@@ -461,10 +455,8 @@
 	}
 
 	sal_Bool bNewIsHeading = IsHeading();
-	//IAccessibility2 Implementation 2009-----
 	//Get the real heading level, Heading1 ~ Heading10
 	nHeadingLevel = GetRealHeadingLevel();
-	//-----IAccessibility2 Implementation 2009
 	sal_Bool bOldIsHeading;
 	{
 		vos::OGuard aGuard( aMutex );
@@ -533,7 +525,6 @@
 
 		if( pWin && pWin->HasFocus() && -1 == nNew )
 			FireStateChangedEvent( AccessibleStateType::FOCUSED, sal_False );
-		//IAccessibility2 Implementation 2009-----
 		//To send TEXT_SELECTION_CHANGED event
 		sal_Int32 nStart=0;
 		sal_Int32 nEnd  =0;
@@ -546,7 +537,6 @@
 			FireAccessibleEvent(aEvent);
 		}
 		m_bLastHasSelection =bCurSelection;
-		//-----IAccessibility2 Implementation 2009
 	}
 }
 
@@ -579,35 +569,27 @@
     , pHyperTextData( NULL )
     , nOldCaretPos( -1 )
     , bIsHeading( sal_False )
-    //IAccessibility2 Implementation 2009-----
     //Get the real heading level, Heading1 ~ Heading10
     , nHeadingLevel (-1)
-    //-----IAccessibility2 Implementation 2009
     , aSelectionHelper( *this )
     // --> OD 2010-02-19 #i108125#
     , mpParaChangeTrackInfo( new SwParaChangeTrackingInfo( rTxtFrm ) )
     // <--
-    //IAccessibility2 Implementation 2009-----
     , m_bLastHasSelection(false)  //To add TEXT_SELECTION_CHANGED event
-    //-----IAccessibility2 Implementation 2009
 {
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
 	bIsHeading = IsHeading();
-	//IAccessibility2 Implementation 2009-----
 	//Get the real heading level, Heading1 ~ Heading10
 	nHeadingLevel = GetRealHeadingLevel();
-	//-----IAccessibility2 Implementation 2009
     // --> OD 2004-09-27 #117970# - set an empty accessibility name for paragraphs
     SetName( ::rtl::OUString() );
     // <--
 
 	// If this object has the focus, then it is remembered by the map itself.
-	//IAccessibility2 Implementation 2009-----
 	// not necessary to remember this pos here. Generally, the pos will be updated in invalidateXXX method, which may fire the
 	//Focus event based on the difference of new & old caret pos. 
 	//nOldCaretPos = GetCaretPos();
-	//-----IAccessibility2 Implementation 2009
 }
 
 SwAccessibleParagraph::~SwAccessibleParagraph()
@@ -731,7 +713,6 @@
 {
     return IsValidPosition(nBegin, nLength) && IsValidPosition(nEnd, nLength);
 }
-//IAccessibility2 Implementation 2009-----
 SwTOXSortTabBase* SwAccessibleParagraph::GetTOXSortTabBase()
 {
 	const SwTxtNode* pTxtNd = GetTxtNode();
@@ -800,7 +781,6 @@
 
 	return pRedline;
 }
-//-----IAccessibility2 Implementation 2009
 
 //
 // text boundaries
@@ -812,10 +792,8 @@
     const ::rtl::OUString&,
     sal_Int32 nPos )
 {
-	//IAccessibility2 Implementation 2009-----
     if( GetPortionData().FillBoundaryIFDateField( rBound,  nPos) )  	
 		return sal_True;
-	//-----IAccessibility2 Implementation 2009
 	
     rBound.startPos = nPos;
     rBound.endPos = nPos+1;
@@ -876,11 +854,9 @@
 				nEndPos++;
 			rBound.endPos = nEndPos;
 		}
-		//IAccessibility2 Implementation 2009-----
 		tabCharInWord( nPos, rBound);
 		if( GetPortionData().FillBoundaryIFDateField( rBound,  rBound.startPos) ) 
 			return sal_True;
-		//-----IAccessibility2 Implementation 2009
         return sal_True; // MT: So why do we need the return TRUE above???
 */
         // get word boundary, as the Break-Iterator sees fit.
@@ -906,14 +882,12 @@
     const ::rtl::OUString& rText,
     sal_Int32 nPos )
 {
-	//IAccessibility2 Implementation 2009-----
 	const sal_Unicode* pStr = rText.getStr();
 	if (pStr)
 	{
 		while( pStr[nPos] == sal_Unicode(' ') && nPos < rText.getLength())
 			nPos++;
 	}
-	//-----IAccessibility2 Implementation 2009
     GetPortionData().GetSentenceBoundary( rBound, nPos );
     return sal_True;
 }
@@ -1027,18 +1001,15 @@
             break;
 
         case AccessibleTextType::LINE:
-			//IAccessibility2 Implementation 2009-----
             //Solve the problem of returning wrong LINE and PARAGRAPH
             if((nPos == rText.getLength()) && nPos > 0)
             	bRet = GetLineBoundary( rBound, rText, nPos - 1);
             else
             	bRet = GetLineBoundary( rBound, rText, nPos );
-			//-----IAccessibility2 Implementation 2009
             break;
 
         case AccessibleTextType::ATTRIBUTE_RUN:
             bRet = GetAttributeBoundary( rBound, rText, nPos );
-			//IAccessibility2 Implementation 2009-----
 			if(bRet)
 			{
 				SwCrsrShell* pCrsrShell = GetCrsrShell();
@@ -1100,7 +1071,6 @@
 					}
 				}
 			}
-			//-----IAccessibility2 Implementation 2009
             break;
 
         case AccessibleTextType::GLYPH:
@@ -1319,7 +1289,6 @@
 	return aRet;
 }
 
-//IAccessibility2 Implementation 2009-----
 uno::Sequence< ::rtl::OUString > getAttributeNames()
 {
     static uno::Sequence< ::rtl::OUString >* pNames = NULL;
@@ -1388,7 +1357,6 @@
     }
     return *pNames;
 }
-//-----IAccessibility2 Implementation 2009
 //
 //=====  XInterface  =======================================================
 //
@@ -1439,7 +1407,6 @@
         aRet <<= aAccMultiLineText;
     }
     // <--
-	//IAccessibility2 Implementation 2009-----
 	//MSAA Extension Implementation in app  module
     else if ( rType == ::getCppuType((uno::Reference<XAccessibleTextSelection> *)NULL) )
     {
@@ -1451,7 +1418,6 @@
 		uno::Reference<XAccessibleExtendedAttributes> xAttr = this;
         aRet <<= xAttr;
     }
-	//-----IAccessibility2 Implementation 2009
     else
     {
         aRet = SwAccessibleContext::queryInterface(rType);
@@ -1576,7 +1542,6 @@
         throw lang::IndexOutOfBoundsException();
 }
 
-//IAccessibility2 Implementation 2009-----
 com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop > SwAccessibleParagraph::GetCurrentTabStop( sal_Int32 nIndex  )
 {
 vos::OGuard aGuard(Application::GetSolarMutex());
@@ -1625,7 +1590,6 @@
 
 	// already get the caret postion
 
-	//IAccessibility2 Implementation 2009-----
 	/*SwFrm* pTFrm = const_cast<SwFrm*>(GetFrm());
 	com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop > tabs = 
 		pTFrm->GetTabStopInfo(aCoreRect.Left());*/
@@ -1637,7 +1601,6 @@
 		SwFrm* pTFrm = const_cast<SwFrm*>(GetFrm());
 		tabs = pTFrm->GetTabStopInfo(aCoreRect.Left());
 	}
-	//-----IAccessibility2 Implementation 2009
 
 	if( tabs.hasElements() )
 	{
@@ -1668,7 +1631,6 @@
 		return (pValues[a].Name < pValues[b].Name) ? true : false;
 	}
 };
-//-----IAccessibility2 Implementation 2009
 
 String SwAccessibleParagraph::GetFieldTypeNameAtIndex(sal_Int32 nIndex)
 {
@@ -1854,10 +1816,9 @@
 
     const ::rtl::OUString& rText = GetString();
 
-    if( ! IsValidChar( nIndex, rText.getLength()+1 ) )//IAccessibility2 Implementation 2009
+    if( ! IsValidChar( nIndex, rText.getLength()+1 ) )
         throw lang::IndexOutOfBoundsException();
 
-	//IAccessibility2 Implementation 2009-----
 	bool bSupplementalMode = false;
     uno::Sequence< ::rtl::OUString > aNames = aRequestedAttributes;
 	if (aNames.getLength() == 0)
@@ -2375,7 +2336,6 @@
     return aValues;
 }
 // <--
-// IAccessibility2 Implementation 2009----
 void SwAccessibleParagraph::_getSupplementalAttributesImpl(
         const sal_Int32,
         const uno::Sequence< ::rtl::OUString >& aRequestedAttributes,
@@ -2676,7 +2636,6 @@
 		}
 	}
 }
-//-----IAccessibility2 Implementation 2009
 
 awt::Rectangle SwAccessibleParagraph::getCharacterBounds(
     sal_Int32 nIndex )
@@ -2979,12 +2938,10 @@
     /*accessibility::*/TextSegment aResult;
     aResult.SegmentStart = -1;
     aResult.SegmentEnd = -1;
-	//IAccessibility2 Implementation 2009-----
 	//If nIndex = 0, then nobefore text so return -1 directly. 
     if( nIndex == 0 )
         	return aResult;
 	//Tab will be return when call WORDTYPE
-	//-----IAccessibility2 Implementation 2009
 
     // get starting pos
     i18n::Boundary aBound;
@@ -2999,7 +2956,6 @@
     }
 
     // now skip to previous word
-	//IAccessibility2 Implementation 2009-----
 	if (nTextType==2 || nTextType == 3)
 	{
         i18n::Boundary preBound = aBound;
@@ -3039,7 +2995,6 @@
 			aResult.SegmentEnd = aBound.endPos;
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
     return aResult;
 }
 
@@ -3082,7 +3037,6 @@
     }
 
 /*
-        //IAccessibility2 Implementation 2009-----
         sal_Bool bWord = sal_False;
     bWord = GetTextBoundary( aBound, rText, nIndex, nTextType );
 
@@ -3138,7 +3092,6 @@
 			aResult.SegmentEnd = aBound.endPos;
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 */
     return aResult;
 }
@@ -3457,7 +3410,6 @@
 			nCount++;
 	}
 
-	//IAccessibility2 Implementation 2009-----
 	/* Can't fin the function "GetTOCFirstWordEndIndex" declaration in sym2.0 (Added by yanjun)
 	if( GetTOXSortTabBase()  )
 	{
@@ -3466,7 +3418,6 @@
 			nCount++; 
 	}
 	*/
-	//-----IAccessibility2 Implementation 2009
 	return nCount;
 }
 
@@ -3714,7 +3665,6 @@
 		if( pHt )
 			nRet = nPos;
 	}
-	//IAccessibility2 Implementation 2009-----
 	/* Added by yanjun for acc miagration
 	if( nRet == -1 && GetTOXSortTabBase() )
 	{
@@ -3729,7 +3679,6 @@
 	else
 		return nRet;
 	//return nRet;
-	//-----IAccessibility2 Implementation 2009
 }
 
 // --> OD 2008-05-26 #i71360#
@@ -3758,7 +3707,6 @@
 
     return pTextMarkupHelper->getTextMarkupCount( nTextMarkupType );
 }
-//IAccessibility2 Implementation 2009-----
 //MSAA Extension Implementation in app  module
 sal_Bool SAL_CALL SwAccessibleParagraph::scrollToPosition( const ::com::sun::star::awt::Point&, sal_Bool )
 	throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
@@ -3954,7 +3902,6 @@
 
     return bRet;
 }
-//-----IAccessibility2 Implementation 2009
 
 /*accessibility::*/TextSegment SAL_CALL
         SwAccessibleParagraph::getTextMarkup( sal_Int32 nTextMarkupIndex,
@@ -4137,7 +4084,6 @@
 }
 // <--
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwAccessibleParagraph::GetSelectionAtIndex(
     sal_Int32& nIndex, sal_Int32& nStart, sal_Int32& nEnd)
 {
@@ -4399,4 +4345,3 @@
 	}
 	return bFind;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accpara.hxx b/main/sw/source/core/access/accpara.hxx
index 61dc45d..3cb019a 100644
--- a/main/sw/source/core/access/accpara.hxx
+++ b/main/sw/source/core/access/accpara.hxx
@@ -29,11 +29,9 @@
 #include <com/sun/star/accessibility/XAccessibleHypertext.hpp>
 #include <com/sun/star/accessibility/XAccessibleTextMarkup.hpp>
 #include <com/sun/star/accessibility/XAccessibleMultiLineText.hpp>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleTextSelection.hpp>
 #include <txmsrt.hxx>
 #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp>
-//-----IAccessibility2 Implementation 2009 
 #include <com/sun/star/accessibility/XAccessibleTextAttributes.hpp>
 #include <hash_map>
 #include <accselectionhelper.hxx>
@@ -47,7 +45,7 @@
 class SwPaM;
 class SwAccessiblePortionData;
 class SwAccessibleHyperTextData;
-class SwRedline; //IAccessibility2 Implementation 2009
+class SwRedline;
 class SwXTextPortion;
 // --> OD 2010-02-19 #i108125#
 class SwParaChangeTrackingInfo;
@@ -76,10 +74,8 @@
         public com::sun::star::accessibility::XAccessibleTextMarkup,
         public com::sun::star::accessibility::XAccessibleMultiLineText,
         public ::com::sun::star::accessibility::XAccessibleTextAttributes,
-		//IAccessibility2 Implementation 2009-----
 		public com::sun::star::accessibility::XAccessibleTextSelection,
 		public  com::sun::star::accessibility::XAccessibleExtendedAttributes
-		//-----IAccessibility2 Implementation 2009
 {
 	friend class SwAccessibleHyperlink;
 
@@ -98,9 +94,7 @@
 							// mutex)
 
 	sal_Bool bIsHeading;	// protected by base classes mutex
-	//IAccessibility2 Implementation 2009-----
 	sal_Int32 nHeadingLevel;
-	//-----IAccessibility2 Implementation 2009 
 
     // implementation for XAccessibleSelection
     SwAccessibleSelectionHelper aSelectionHelper;
@@ -159,10 +153,8 @@
         }
     }
 
-	//IAccessibility2 Implementation 2009-----
     const SwRedline* GetRedlineAtIndex( sal_Int32 nPos );
 	String GetFieldTypeNameAtIndex(sal_Int32 nIndex);
-	//-----IAccessibility2 Implementation 2009 
     // --> OD 2006-07-13 #i63870#
     void _getDefaultAttributesImpl(
             const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes,
@@ -173,7 +165,6 @@
             const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes,
             tAccParaPropValMap& rRunAttrSeq );
     // <--
-	// IAccessibility2 Implementation 2009----
 	void _getSupplementalAttributesImpl(
 			const sal_Int32 nIndex,
             const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes,
@@ -182,13 +173,10 @@
 	void _correctValues(
 			const sal_Int32 nIndex,
 			::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rValues );
-	// ----IAccessibility2 Implementation 2009
 
 public:
-	//IAccessibility2 Implementation 2009-----
 	SwTOXSortTabBase* GetTOXSortTabBase();
 	short GetTOCLevel();
-	//-----IAccessibility2 Implementation 2009
 	sal_Bool IsHeading() const;
 
 protected:
@@ -273,10 +261,8 @@
 
 	virtual sal_Bool HasCursor();	// required by map to remember that object
 
-	//IAccessibility2 Implementation 2009-----
 	com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop > GetCurrentTabStop( sal_Int32 nIndex  );
 	virtual sal_Int16 SAL_CALL getAccessibleRole (void)     throw (::com::sun::star::uno::RuntimeException);
-	//-----IAccessibility2 Implementation 2009
     // --> OD 2010-02-19 #i108125#
     // MT: Solved merge conflict - seems this was removed between 101 and 103?
     // virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew);
@@ -447,7 +433,6 @@
                    ::com::sun::star::lang::IllegalArgumentException,
                    ::com::sun::star::uno::RuntimeException);
     // <--
-    //IAccessibility2 Implementation 2009-----
 	//======   XAccessibleTextSelection  ======================================
 	virtual sal_Bool SAL_CALL scrollToPosition( const ::com::sun::star::awt::Point& aPoint, sal_Bool isLeftTop )
 		throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
@@ -469,7 +454,6 @@
 	//=====  XAccessibleComponent  ============================================
 	sal_Bool m_bLastHasSelection;
 	sal_Bool tabCharInWord(sal_Int32 nIndex, com::sun::star::i18n::Boundary&  aBound);
-	//-----IAccessibility2 Implementation 2009
     // --> OD 2008-05-29 #i89175#
     //=====  XAccessibleMultiLineText  ========================================
     virtual sal_Int32 SAL_CALL getLineNumberAtIndex( sal_Int32 nIndex )
diff --git a/main/sw/source/core/access/accportions.cxx b/main/sw/source/core/access/accportions.cxx
index 0eaf49c..70b3f9f 100644
--- a/main/sw/source/core/access/accportions.cxx
+++ b/main/sw/source/core/access/accportions.cxx
@@ -64,9 +64,7 @@
 
 using namespace ::com::sun::star;
 
-//IAccessibility2 Implementation 2009-----
 //#include "accnote.hxx"
-//-----IAccessibility2 Implementation 2009
 
 using rtl::OUString;
 using rtl::OUStringBuffer;
@@ -144,13 +142,11 @@
 
     bLastIsSpecial = sal_False;
 }
-//IAccessibility2 Implementation 2009-----
 void SwAccessiblePortionData::SetAttrFieldType( sal_uInt16 nAttrFldType )
 {
 	aAttrFieldType.push_back(nAttrFldType);
 	return;
 }
-//-----IAccessibility2 Implementation 2009
 
 void SwAccessiblePortionData::Special(
     sal_uInt16 nLength, const String& rText, sal_uInt16 nType)
@@ -167,7 +163,6 @@
     switch( nType )
     {
         case POR_POSTITS:
-			//IAccessibility2 Implementation 2009-----
             sDisplay = String(sal_Unicode(0xfffc));
             
 			break;
@@ -205,7 +200,6 @@
 				m_vecPairPos.push_back(std::make_pair(nStart,nEnd));
 				break;
 			}
-			//-----IAccessibility2 Implementation 2009
             break;
         case POR_NUMBER:
         {
@@ -722,7 +716,6 @@
     return static_cast<sal_uInt16>( nModelPos );
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_uInt16 SwAccessiblePortionData::GetAttrFldType( sal_Int32 nPos )
 {
 	if( aFieldPosition.size() < 2 ) return sal_False;
@@ -752,7 +745,6 @@
 	}
 	return sal_False;  	
 }
-//-----IAccessibility2 Implementation 2009
 void SwAccessiblePortionData::AdjustAndCheck(
     sal_Int32 nPos,
     size_t& nPortionNo,
@@ -816,7 +808,6 @@
            ( nPos <= aModelPositions[ aModelPositions.size()-1 ] );
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwAccessiblePortionData::IsZeroCorePositionData()
 {
 	if( aModelPositions.size() < 1  ) return sal_True;
@@ -849,7 +840,7 @@
 	sal_Int32 nIndex = -1;
 	if( aFieldPosition.size() >= 2 ) 
 	{
-		for( sal_Int32 i = 0; i < aFieldPosition.size() - 1; i += 2 )
+		for( sal_uInt32 i = 0; i < aFieldPosition.size() - 1; i += 2 )
 		{
 			if( nPos <= aFieldPosition[ i + 1 ]  &&  nPos >= aFieldPosition[ i ] ) 
 			{
diff --git a/main/sw/source/core/access/accportions.hxx b/main/sw/source/core/access/accportions.hxx
index b58160b..16c8061 100644
--- a/main/sw/source/core/access/accportions.hxx
+++ b/main/sw/source/core/access/accportions.hxx
@@ -61,9 +61,7 @@
     Positions_t aLineBreaks;        /// position of line breaks
     Positions_t aModelPositions;    /// position of portion breaks in the model
     Positions_t aAccessiblePositions;   /// portion breaks in sAccessibleString
-    //IAccessibility2 Implementation 2009-----
     Positions_t aFieldPosition;
-    //-----IAccessibility2 Implementation 2009
     Positions_t aAttrFieldType;
 	
     typedef std::vector<sal_uInt8> PortionAttrs_t;
@@ -108,13 +106,11 @@
     virtual void Skip(sal_uInt16 nLength);
     virtual void Finish();
 
-    //IAccessibility2 Implementation 2009-----
     virtual void SetAttrFieldType( sal_uInt16 nAttrFldType );
     sal_Bool FillBoundaryIFDateField( com::sun::star::i18n::Boundary& rBound, const sal_Int32 nPos );
 	sal_Bool IsIndexInFootnode(sal_Int32 nIndex);
 	sal_Bool IsInGrayPortion( sal_Int32 nPos );
 	sal_Int32 GetFieldIndex(sal_Int32 nPos);
-	//-----IAccessibility2 Implementation 2009
 
     sal_Bool IsZeroCorePositionData();
     // access to the portion data
@@ -177,12 +173,10 @@
     sal_Bool IsValidCorePosition( sal_uInt16 nPos ) const;
     sal_uInt16 GetFirstValidCorePosition() const;
     sal_uInt16 GetLastValidCorePosition() const;
-	//IAccessibility2 Implementation 2009-----
 private:
 	typedef std::pair<sal_Int32,sal_Int32> PAIR_POS;
 	typedef std::vector<PAIR_POS> VEC_PAIR_POS;
 	VEC_PAIR_POS m_vecPairPos;
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/core/access/accpreview.cxx b/main/sw/source/core/access/accpreview.cxx
index d82b62b..e085bc8 100644
--- a/main/sw/source/core/access/accpreview.cxx
+++ b/main/sw/source/core/access/accpreview.cxx
@@ -32,11 +32,9 @@
 #endif
 #include <accpreview.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLESTATETYPE_HPP_
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #endif
-//-----IAccessibility2 Implementation 2009
 
 const sal_Char sServiceName[] = "com.sun.star.text.AccessibleTextDocumentPageView";
 const sal_Char sImplementationName[] = "com.sun.star.comp.Writer.SwAccessibleDocumentPageView";
@@ -59,9 +57,7 @@
 SwAccessiblePreview::SwAccessiblePreview( SwAccessibleMap *pMp ) :
     SwAccessibleDocumentBase( pMp )
 {
-	//IAccessibility2 Implementation 2009-----
 	SetName( GetResource( STR_ACCESS_PREVIEW_DOC_NAME ) );
-	//-----IAccessibility2 Implementation 2009
 }
 
 SwAccessiblePreview::~SwAccessiblePreview()
@@ -105,7 +101,6 @@
     }
     return aId;
 }
-//IAccessibility2 Implementation 2009-----
 OUString SAL_CALL SwAccessiblePreview::getAccessibleDescription (void) throw (com::sun::star::uno::RuntimeException)
 {
 	return GetResource( STR_ACCESS_PREVIEW_DOC_NAME );
@@ -122,4 +117,3 @@
 {
 	FireStateChangedEvent( ::com::sun::star::accessibility::AccessibleStateType::FOCUSED, sal_True );
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/core/access/accpreview.hxx b/main/sw/source/core/access/accpreview.hxx
index 7c0c62e..fdcb961 100644
--- a/main/sw/source/core/access/accpreview.hxx
+++ b/main/sw/source/core/access/accpreview.hxx
@@ -67,11 +67,9 @@
 	//====== XTypeProvider ====================================================
     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
 
-	//IAccessibility2 Implementation 2009-----
 	::rtl::OUString SAL_CALL getAccessibleDescription (void) throw (com::sun::star::uno::RuntimeException);
 	::rtl::OUString SAL_CALL getAccessibleName (void) throw (::com::sun::star::uno::RuntimeException);
 	virtual void _InvalidateFocus();
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/sw/source/core/access/accselectionhelper.cxx b/main/sw/source/core/access/accselectionhelper.cxx
index d59c24c..f1afca5 100644
--- a/main/sw/source/core/access/accselectionhelper.cxx
+++ b/main/sw/source/core/access/accselectionhelper.cxx
@@ -38,12 +38,10 @@
 #include <flyfrm.hxx>
 
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/uno/Reference.hxx>
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
 #include <fmtanchr.hxx>
-//-----IAccessibility2 Implementation 2009
 
 using namespace ::com::sun::star::accessibility;
 using namespace ::com::sun::star;
@@ -125,7 +123,6 @@
     // return bRet;
 }
 
-//IAccessibility2 Implementation 2009-----
 //When the selected state of the SwFrmOrObj is setted, return true.
 static sal_Bool lcl_getSelectedState(const SwAccessibleChild& aChild, 
 									 SwAccessibleContext* pContext,
@@ -160,7 +157,6 @@
 	}
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 
 sal_Bool SwAccessibleSelectionHelper::isAccessibleChildSelected(
     sal_Int32 nChildIndex )
@@ -188,14 +184,12 @@
 		{
             bRet = pFEShell->IsObjSelected( *aChild.GetDrawObject() );
 		}
-		//IAccessibility2 Implementation 2009-----
 		//If the SwFrmOrObj is not selected directly in the UI, we should check whether it is selected in the selection cursor.
 		if( !bRet )
 		{
 			if( lcl_getSelectedState( aChild, &rContext, rContext.GetMap() ) == sal_True)
 				bRet = sal_True;
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 
 	return bRet;
@@ -253,11 +247,9 @@
         const SwFlyFrm* pFlyFrm = pFEShell->GetCurrFlyFrm();
 		if( pFlyFrm )
 		{
-			//IAccessibility2 Implementation 2009-----
             //if( rContext.GetParent( SwAccessibleChild(pFlyFrm), rContext.IsInPagePreview()) ==
             //        rContext.GetFrm() )
 				nCount = 1;
-			//-----IAccessibility2 Implementation 2009
 		}
 		else
 		{
@@ -285,7 +277,6 @@
 				}
 			}
 		}
-		//IAccessibility2 Implementation 2009-----
 		//If the SwFrmOrObj is not selected directly in the UI, 
 		//we should check whether it is selected in the selection cursor.
 		if( nCount == 0 )
@@ -304,7 +295,6 @@
 				++aIter;
 			}
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
     return nCount;
 }
@@ -328,7 +318,6 @@
 	const SwFlyFrm *pFlyFrm = pFEShell->GetCurrFlyFrm();
 	if( pFlyFrm )
 	{
-		//IAccessibility2 Implementation 2009-----
 		if( 0 == nSelectedChildIndex )
 		{
             if(rContext.GetParent( SwAccessibleChild(pFlyFrm), rContext.IsInPagePreview()) == rContext.GetFrm() )
@@ -349,7 +338,6 @@
 				}
 			}
 		}
-		//-----IAccessibility2 Implementation 2009
 	}
 	else
 	{
diff --git a/main/sw/source/core/access/acctable.cxx b/main/sw/source/core/access/acctable.cxx
index 62ef202..b24185d 100644
--- a/main/sw/source/core/access/acctable.cxx
+++ b/main/sw/source/core/access/acctable.cxx
@@ -72,7 +72,7 @@
 typedef ::std::pair < sal_Int32, sal_Int32 > Int32Pair_Impl;
 typedef ::std::list < Int32Pair_Impl > Int32PairList_Impl;
 
-const int SELECTION_WITH_NUM =10;
+const unsigned int SELECTION_WITH_NUM = 10;
 
 class SwAccTableSelHander_Impl
 {
@@ -95,10 +95,8 @@
     bool mbOnlyTableColumnHeader;
 
 	void CollectData( const SwFrm *pFrm );
-	//IAccessibility2 Implementation 2009-----
 	void CollectColumnHeaderData( const SwFrm *pFrm );
 	void CollectRowHeaderData( const SwFrm *pFrm );
-	//-----IAccessibility2 Implementation 2009
 	void CollectExtents( const SwFrm *pFrm );
 
 	sal_Bool FindCell( const Point& rPos, const SwFrm *pFrm ,
@@ -193,7 +191,6 @@
 	}
 }
 
-//IAccessibility2 Implementation 2009-----
 void SwAccessibleTableData_Impl::CollectRowHeaderData( const SwFrm *pFrm )
 {
     const SwAccessibleChildSList aList( *pFrm, mrAccMap );
@@ -237,7 +234,6 @@
 		++aIter;
 	}
 }
-//-----IAccessibility2 Implementation 2009
 
 void SwAccessibleTableData_Impl::CollectColumnHeaderData( const SwFrm *pFrm )
 {
@@ -285,7 +281,6 @@
 		++aIter;
 	}
 }
-//-----IAccessibility2 Implementation 2009
 void SwAccessibleTableData_Impl::CollectExtents( const SwFrm *pFrm )
 {
     const SwAccessibleChildSList aList( *pFrm, mrAccMap );
@@ -500,10 +495,8 @@
 
 inline sal_Int32 SwAccessibleTableData_Impl::GetRowCount() const
 {
-	//IAccessibility2 Implementation 2009-----
 	sal_Int32 count =  static_cast< sal_Int32 >( maRows.size() ) ;
 	count = (count <=0)? 1:count;
-	//-----IAccessibility2 Implementation 2009
 	return count;
 }
 
@@ -804,12 +797,10 @@
 		::utl::AccessibleStateSetHelper& rStateSet )
 {
 	SwAccessibleContext::GetStates( rStateSet );
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add resizable state to table
 	rStateSet.AddState( AccessibleStateType::RESIZABLE );
 	// MULTISELECTABLE
 	rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
-	//-----IAccessibility2 Implementation 2009
     SwCrsrShell* pCrsrShell = GetCrsrShell();
     if( pCrsrShell  )
 		rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
@@ -839,9 +830,7 @@
 	OUString sArg2( GetFormattedPageNumber() );
 
 	sDesc = GetResource( STR_ACCESS_TABLE_DESC, &sArg1, &sArg2 );
-	//IAccessibility2 Implementation 2009-----
 	UpdateTableData();
-	//-----IAccessibility2 Implementation 2009
 }
 
 SwAccessibleTable::~SwAccessibleTable()
@@ -923,13 +912,11 @@
         uno::Reference<XAccessibleSelection> xSelection( this );
         aRet <<= xSelection;
     }
-	//IAccessibility2 Implementation 2009-----
 	else if ( rType == ::getCppuType((uno::Reference<XAccessibleTableSelection> *)0) )
     {
 		uno::Reference<XAccessibleTableSelection> xTableExtent( this );
         aRet <<= xTableExtent;
     }
-	//-----IAccessibility2 Implementation 2009
     else
     {
         aRet = SwAccessibleContext::queryInterface(rType);
@@ -1102,9 +1089,7 @@
 
 	CHECK_FOR_DEFUNC( XAccessibleTable )
 
-	//IAccessibility2 Implementation 2009-----
 	UpdateTableData();
-	//-----IAccessibility2 Implementation 2009
 	GetTableData().CheckRowAndCol( nRow, nColumn, this );
 
 	Int32Set_Impl::const_iterator aSttCol(
@@ -1135,9 +1120,7 @@
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
 	CHECK_FOR_DEFUNC( XAccessibleTable )
-	//IAccessibility2 Implementation 2009-----
 	UpdateTableData();
-	//-----IAccessibility2 Implementation 2009
 
 	GetTableData().CheckRowAndCol( nRow, nColumn, this );
 
@@ -1492,7 +1475,6 @@
 {
 	vos::OGuard aGuard(Application::GetSolarMutex());
 
-	//IAccessibility2 Implementation 2009-----
 	//need to update children 
 	SwAccessibleTableData_Impl *pNewTableData = CreateNewTableData();
 	if( !pNewTableData->CompareExtents( GetTableData() ) )
@@ -1557,7 +1539,6 @@
             // <--
 			if( !pNewTableData->CompareExtents( GetTableData() ) )
 			{
-				//IAccessibility2 Implementation 2009-----
 				if(pNewTableData->GetRowCount()!= mpTableData->GetRowCount())
 				{
 					Int32Set_Impl::const_iterator aSttCol( GetTableData().GetColumnIter( 0 ) );
@@ -1584,7 +1565,6 @@
 					}
 				}
 				else
-				//-----IAccessibility2 Implementation 2009
 				FireTableChangeEvent( GetTableData() );
 				ClearTableData();
 				mpTableData = pNewTableData;
@@ -1857,7 +1837,6 @@
 	pCrsrShell->EndAction();
 }
 
-//IAccessibility2 Implementation 2009-----
 void  SwAccessibleTable::SetTableData(SwAccessibleTableData_Impl* mpNewTableData)  
 {
 	mpTableData = mpNewTableData;
@@ -2003,7 +1982,6 @@
 	}
 	return sal_True;
 }
-//-----IAccessibility2 Implementation 2009
 // --> OD 2007-06-28 #i77106#
 // implementation of class <SwAccessibleTableColHeaders>
 SwAccessibleTableColHeaders::SwAccessibleTableColHeaders( SwAccessibleMap *pMap2,
diff --git a/main/sw/source/core/access/acctable.hxx b/main/sw/source/core/access/acctable.hxx
index 866b037..f7c65f9 100644
--- a/main/sw/source/core/access/acctable.hxx
+++ b/main/sw/source/core/access/acctable.hxx
@@ -23,12 +23,10 @@
 #ifndef _ACCTABLE_HXX
 #define _ACCTABLE_HXX
 #include <com/sun/star/accessibility/XAccessibleTable.hpp>
-//IAccessibility2 Implementation 2009-----
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XAccessibleTableSelection_HPP_
 #include <com/sun/star/accessibility/XAccessibleTableSelection.hpp>
 #endif
 #include <vector>
-//-----IAccessibility2 Implementation 2009
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 
 #include <acccontext.hxx>
@@ -92,9 +90,7 @@
 	// Is table data evailable?
     sal_Bool HasTableData() const { return (mpTableData != 0); }
 
-	//IAccessibility2 Implementation 2009-----
 	void SetTableData(SwAccessibleTableData_Impl* mpNewTableData)  ;
-	//-----IAccessibility2 Implementation 2009
 	virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
 
 public:
@@ -197,7 +193,6 @@
     virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex )
 		throw (::com::sun::star::lang::IndexOutOfBoundsException,
 				::com::sun::star::uno::RuntimeException);
-	//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleTableSelection  ============================================
 	virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
@@ -207,7 +202,6 @@
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
     virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) 
 		throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ;
-	//-----IAccessibility2 Implementation 2009
 	//=====  XServiceInfo  ====================================================
 
     /**	Returns an identifier for the implementation of this object.
@@ -274,7 +268,6 @@
         throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
                 ::com::sun::star::uno::RuntimeException );
 
-	//IAccessibility2 Implementation 2009-----
 	//=====  XAccessibleComponent  ============================================
 	sal_Int32 SAL_CALL getBackground() 
 		throw (::com::sun::star::uno::RuntimeException);
@@ -284,7 +277,6 @@
 	void FireSelectionEvent( );
 	void ClearSelectionCellCache();
 	void AddSelectionCell(const SwAccessibleContext* ,sal_Bool bAddOrRemove);
-	//-----IAccessibility2 Implementation 2009
 };
 
 inline SwAccessibleTableData_Impl& SwAccessibleTable::GetTableData()
diff --git a/main/sw/source/core/access/acctextframe.cxx b/main/sw/source/core/access/acctextframe.cxx
index 2654a7b..c809de4 100644
--- a/main/sw/source/core/access/acctextframe.cxx
+++ b/main/sw/source/core/access/acctextframe.cxx
@@ -44,11 +44,9 @@
 // <--
 #include "acctextframe.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _DOC_HXX
 #include <doc.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::accessibility;
 using ::rtl::OUString;
@@ -157,7 +155,6 @@
 	}
 }
 
-//IAccessibility2 Implementation 2009-----
 //=====  XInterface  ==========================================================
 
 com::sun::star::uno::Any SAL_CALL
@@ -274,7 +271,6 @@
 {	
     DBG_ASSERT( false, "<SwAccessibleTextFrame::selectAllAccessibleChildren( sal_Int32 )> - missing implementation" );
 }
-//-----IAccessibility2 Implementation 2009
 
 // --> OD 2009-07-14 #i73249#
 OUString SAL_CALL SwAccessibleTextFrame::getAccessibleName (void)
@@ -300,7 +296,6 @@
 
     CHECK_FOR_DEFUNC( XAccessibleContext )
 	/* MT: I guess msDesc is correct noadays?
-	//IAccessibility2 Implementation 2009-----
 	OUString longDesc;	
 	const SwFlyFrmFmt* pFlyFmt = GetShell()->GetDoc()->FindFlyByName( GetName(), 0);
 	if( pFlyFmt )
@@ -311,7 +306,6 @@
 		return GetName() + OUString(' ') + longDesc;
 	else
 		return GetName();
-	//-----IAccessibility2 Implementation 2009
 	*/
 
     return msDesc;
diff --git a/main/sw/source/core/access/acctextframe.hxx b/main/sw/source/core/access/acctextframe.hxx
index c2de65c..245d824 100644
--- a/main/sw/source/core/access/acctextframe.hxx
+++ b/main/sw/source/core/access/acctextframe.hxx
@@ -24,9 +24,7 @@
 #define _ACCTEXTFRAME_HXX
 #include "accframebase.hxx"
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-//-----IAccessibility2 Implementation 2009
 
 class SwFlyFrm;
 namespace utl { class AccessibleRelationSetHelper; }
@@ -53,7 +51,6 @@
 
     SwAccessibleTextFrame( SwAccessibleMap* pInitMap, const SwFlyFrm* pFlyFrm );
 
-	//IAccessibility2 Implementation 2009-----
 	virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
 		::com::sun::star::uno::Type const & rType )
 		throw (::com::sun::star::uno::RuntimeException);
@@ -88,7 +85,6 @@
 		sal_Int32 nSelectedChildIndex ) 
 		throw ( ::com::sun::star::lang::IndexOutOfBoundsException, 
 		::com::sun::star::uno::RuntimeException );
-	//-----IAccessibility2 Implementation 2009
 
 	//=====  XAccessibleContext  ==============================================
 
diff --git a/main/sw/source/core/attr/format.cxx b/main/sw/source/core/attr/format.cxx
index e05aa27..0a3bec6 100644
--- a/main/sw/source/core/attr/format.cxx
+++ b/main/sw/source/core/attr/format.cxx
@@ -257,9 +257,7 @@
 		}
 		else
 		{
-			//IAccessibility2 Implementation 2009-----
 			while( GetDepends() && pParentFmt)
-			//-----IAccessibility2 Implementation 2009
 			{
 				SwFmtChg aOldFmt(this);
 				SwFmtChg aNewFmt(pParentFmt);
diff --git a/main/sw/source/core/crsr/crsrsh.cxx b/main/sw/source/core/crsr/crsrsh.cxx
index eb620d6..48ea4b3 100644
--- a/main/sw/source/core/crsr/crsrsh.cxx
+++ b/main/sw/source/core/crsr/crsrsh.cxx
@@ -424,7 +424,6 @@
     }
 	return bRet;
 }
-//IAccessibility2 Implementation 2009-----
 void SwCrsrShell::FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage)
 {
 #ifdef ACCESSIBLE_LAYOUT
@@ -452,7 +451,6 @@
 bool SwCrsrShell::bColumnChange()
 {
 	
-	sal_uInt16 nCurrCol = 0;
 	SwFrm* pCurrFrm = GetCurrFrm(sal_False);
 
 	if (pCurrFrm == NULL)
@@ -483,7 +481,6 @@
 		return sal_True;
 	}
 }
-//-----IAccessibility2 Implementation 2009
 
 // --> OD 2008-04-02 #refactorlists#
 void SwCrsrShell::MarkListLevel( const String& sListId,
@@ -2666,9 +2663,7 @@
 //	UpdateCrsr( 0 );
     // OD 11.02.2003 #100556#
     mbMacroExecAllowed = rShell.IsMacroExecAllowed();
-	//IAccessibility2 Implementation 2009-----
 	oldColFrm = NULL;
-	//-----IAccessibility2 Implementation 2009 
 }
 
 
diff --git a/main/sw/source/core/doc/doclay.cxx b/main/sw/source/core/doc/doclay.cxx
index e07d212..b4570f6 100644
--- a/main/sw/source/core/doc/doclay.cxx
+++ b/main/sw/source/core/doc/doclay.cxx
@@ -1416,8 +1416,8 @@
 
 				pNewSet->Put( SwFmtSurround( SURROUND_NONE ) );
 				pNewSet->Put( SvxOpaqueItem( RES_OPAQUE, sal_True ) );
-                pNewSet->Put( SwFmtVertOrient( text::VertOrientation::TOP ) );
-                pNewSet->Put( SwFmtHoriOrient( text::HoriOrientation::CENTER ) );
+                pNewSet->Put( SwFmtVertOrient( 0, text::VertOrientation::TOP, text::RelOrientation::FRAME ) );
+                pNewSet->Put( SwFmtHoriOrient( 0, text::HoriOrientation::CENTER, text::RelOrientation::FRAME ) );
 
 				aFrmSize = pOldFmt->GetFrmSize();
 				aFrmSize.SetWidthPercent( 100 );
diff --git a/main/sw/source/core/doc/tblcpy.cxx b/main/sw/source/core/doc/tblcpy.cxx
index 54842c1..fd7a137 100644
--- a/main/sw/source/core/doc/tblcpy.cxx
+++ b/main/sw/source/core/doc/tblcpy.cxx
@@ -1029,11 +1029,9 @@
 
 	// loesche die Frames
 	aFndBox.SetTableLines( *this );
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Not dispose accessible table
 	//aFndBox.DelFrms( *this );
 	aFndBox.DelFrms( *this,sal_False );
-	//-----IAccessibility2 Implementation 2009
 
 	if( 1 == rCpyTbl.GetTabSortBoxes().Count() )
 	{
diff --git a/main/sw/source/core/docnode/node.cxx b/main/sw/source/core/docnode/node.cxx
index bbfca86..72a7e15 100644
--- a/main/sw/source/core/docnode/node.cxx
+++ b/main/sw/source/core/docnode/node.cxx
@@ -1041,9 +1041,7 @@
 	// der Abhaengikeitsliste raus!
 	// Daher muessen alle Frames in der Abhaengigkeitsliste geloescht werden.
 	if( GetDepends() )
-		//IAccessibility2 Implementation 2009-----
 		DelFrms(sal_True, sal_False);
-		//-----IAccessibility2 Implementation 2009
 
     if( pCondColl )
 		delete pCondColl;
@@ -1370,12 +1368,10 @@
  */
 
 
-//IAccessibility2 Implementation 2009-----
 //Solution:Add a input param to identify if the acc table should be disposed.
 //add a flag(bNeedDel) to indicate whether to del corresponding frm even in doc loading process, 
 //void SwCntntNode::DelFrms()
-void SwCntntNode::DelFrms( sal_Bool bNeedDel, sal_Bool bIsDisposeAccTable )
-//-----IAccessibility2 Implementation 2009
+void SwCntntNode::DelFrms( sal_Bool /* bNeedDel */, sal_Bool bIsDisposeAccTable )
 {
 	if( !GetDepends() )
 		return;
@@ -1431,14 +1427,12 @@
 				((SwTxtFrm*)pCFrm->FindMaster())->Prepare( PREP_FTN_GONE );
 			}
 		}
-		//IAccessibility2 Implementation 2009-----
 		//Solution:Set acc table dispose state
 		pFrm->SetAccTableDispose( bIsDisposeAccTable );
 		//End Added
 		pFrm->Cut();
 		//Solution:Set acc table dispose state to default value
 		pFrm->SetAccTableDispose( sal_True );
-		//-----IAccessibility2 Implementation 2009
 		delete pFrm;
 	}
 	if( IsTxtNode() )
diff --git a/main/sw/source/core/docnode/nodes.cxx b/main/sw/source/core/docnode/nodes.cxx
index 21f7e76..13b8771 100644
--- a/main/sw/source/core/docnode/nodes.cxx
+++ b/main/sw/source/core/docnode/nodes.cxx
@@ -897,7 +897,6 @@
 			break;
 
 		case ND_TEXTNODE:
-			//IAccessibility2 Implementation 2009-----
 			//Solution:Add special function to text node.
 			{
 				if( bNewFrms && pAktNode->GetCntntNode() )
@@ -907,7 +906,6 @@
 				aRg.aEnd--;
 			}
 			break;
-		    //-----IAccessibility2 Implementation 2009
 		case ND_GRFNODE:
 		case ND_OLENODE:
 			{
diff --git a/main/sw/source/core/fields/expfld.cxx b/main/sw/source/core/fields/expfld.cxx
index 0542f6e..8f52d44 100644
--- a/main/sw/source/core/fields/expfld.cxx
+++ b/main/sw/source/core/fields/expfld.cxx
@@ -1155,8 +1155,8 @@
     , aContent(rContent)
     , aPText(rPrompt)
     , nSubType(nSub)
-    , mpFmtFld( NULL )
     , mbIsFormField( bIsFormField )
+    , mpFmtFld( NULL )
 {
 }
 
diff --git a/main/sw/source/core/frmedt/feshview.cxx b/main/sw/source/core/frmedt/feshview.cxx
index f640eba..bd82072 100644
--- a/main/sw/source/core/frmedt/feshview.cxx
+++ b/main/sw/source/core/frmedt/feshview.cxx
@@ -1020,7 +1020,6 @@
 					->IsObjMarked( const_cast< SdrObject * >( &rObj ) );
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_Bool SwFEShell::IsObjSameLevelWithMarked(const SdrObject* pObj) const
 {
 	if (pObj)
@@ -1040,7 +1039,6 @@
 	}
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
 |*
 |*	SwFEShell::EndTextEdit()
diff --git a/main/sw/source/core/frmedt/tblsel.cxx b/main/sw/source/core/frmedt/tblsel.cxx
index d57d121..b9f5748 100644
--- a/main/sw/source/core/frmedt/tblsel.cxx
+++ b/main/sw/source/core/frmedt/tblsel.cxx
@@ -2255,11 +2255,9 @@
 	pTab->bIsFollow = sal_False;
 }
 
-//IAccessibility2 Implementation 2009-----
 //Solution:When bAccTableDispose is FALSE,the acc table should not be disposed. 
 //void _FndBox::DelFrms( SwTable &rTable )
 void _FndBox::DelFrms( SwTable &rTable,sal_Bool bAccTableDispose )
-//-----IAccessibility2 Implementation 2009
 {
 	//Alle Lines zwischen pLineBefore und pLineBehind muessen aus dem
 	//Layout ausgeschnitten und geloescht werden.
@@ -2377,14 +2375,12 @@
                             // next turn.
                             ((SwTabFrm*)pTabFrm)->SetFollowFlowLine( sal_False );
                         }
-						//IAccessibility2 Implementation 2009-----
 						//Solution:Set acc table dispose state
 						pFrm->SetAccTableDispose( bAccTableDispose );
                         pFrm->Cut();
 						//Solution:Set acc table dispose state to default value.
 						pFrm->SetAccTableDispose( sal_True );
 						delete pFrm;
-						//-----IAccessibility2 Implementation 2009
 					}
 				}
 		}
diff --git a/main/sw/source/core/inc/SwPortionHandler.hxx b/main/sw/source/core/inc/SwPortionHandler.hxx
index 86793d5..db4bea2 100644
--- a/main/sw/source/core/inc/SwPortionHandler.hxx
+++ b/main/sw/source/core/inc/SwPortionHandler.hxx
@@ -92,10 +92,8 @@
      * paragraph's portions have been processed. 
      */
     virtual void Finish() = 0;
-    //IAccessibility2 Implementation 2009-----
     virtual void SetAttrFieldType( sal_uInt16 )
     { return; }
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/sw/source/core/inc/doctxm.hxx b/main/sw/source/core/inc/doctxm.hxx
index 1bf0e09..a79e34b 100644
--- a/main/sw/source/core/inc/doctxm.hxx
+++ b/main/sw/source/core/inc/doctxm.hxx
@@ -102,9 +102,7 @@
                  const bool        _bNewTOX = false ); // Formatieren
 	void UpdatePageNum();   			// Seitennummern einfuegen
 	TYPEINFO();							// fuers rtti
-//IAccessibility2 Implementation 2009-----
 	SwTOXSortTabBases* GetTOXSortTabBases() { return &aSortArr; }
-//-----IAccessibility2 Implementation 2009
 
 	sal_Bool SetPosAtStartEnd( SwPosition& rPos, sal_Bool bAtStart = sal_True ) const;
 };
diff --git a/main/sw/source/core/inc/frame.hxx b/main/sw/source/core/inc/frame.hxx
index 5165e8f..1676fd6 100644
--- a/main/sw/source/core/inc/frame.hxx
+++ b/main/sw/source/core/inc/frame.hxx
@@ -29,11 +29,9 @@
 #include "calbck.hxx"	// fuer SwClient
 #include <svl/brdcst.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/style/TabStop.hpp>
 #include <comphelper/stlunosequence.hxx>
 using namespace ::com::sun::star;
-//-----IAccessibility2 Implementation 2009
 class SwLayoutFrm;
 class SwRootFrm;
 class SwPageFrm;
@@ -297,10 +295,8 @@
 
 	//Cache fuer (Umrandungs-)Attribute.
 	static SwCache *pCache;
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Member to identify if acc table should be disposed
 	sal_Bool bIfAccTableShouldDisposing;
-	//-----IAccessibility2 Implementation 2009
 
     // --> OD 2006-05-10 #i65250#
     // frame ID is now in general available - used for layout loop control
@@ -424,12 +420,10 @@
 	sal_Bool bRetouche:			1;	//Der Frame ist fuer Retusche verantwortlich
 								//wenn sal_True.
 public:
-	//IAccessibility2 Implementation 2009-----
 	virtual uno::Sequence< style::TabStop >  GetTabStopInfo( SwTwips )
 	{
 		return uno::Sequence< style::TabStop >();
 	}
-	//-----IAccessibility2 Implementation 2009
     sal_Bool bUnUsed2:          1;
 protected:
 	sal_Bool bInfInvalid:		1;	//InfoFlags sind Invalid.
@@ -784,10 +778,8 @@
 	virtual Size ChgSize( const Size& aNewSize );
 
 	virtual void Cut() = 0;
-	//IAccessibility2 Implementation 2009-----
 	//Solution:Add a method to change the acc table dispose state.
 	void SetAccTableDispose( sal_Bool bDispose){ bIfAccTableShouldDisposing = bDispose;}
-	//-----IAccessibility2 Implementation 2009
 	virtual void Paste( SwFrm* pParent, SwFrm* pSibling = 0 ) = 0;
 
 	void ValidateLineNum() { bValidLineNum = sal_True; }
diff --git a/main/sw/source/core/inc/txtfrm.hxx b/main/sw/source/core/inc/txtfrm.hxx
index 5a5f86b..55c3331 100644
--- a/main/sw/source/core/inc/txtfrm.hxx
+++ b/main/sw/source/core/inc/txtfrm.hxx
@@ -26,9 +26,7 @@
 #include <tools/mempool.hxx>
 #include <tools/string.hxx>
 #include "cntfrm.hxx"
-//IAccessibility2 Implementation 2009-----
 #include "com/sun/star/uno/Sequence.hxx"
-//-----IAccessibility2 Implementation 2009
 #define STRSIZE(x) (sizeof(x)-1)
 
 class SwCharRange;
@@ -231,9 +229,7 @@
 
 public:
 
-	//IAccessibility2 Implementation 2009-----
 	com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop >  GetTabStopInfo( SwTwips CurrentPos );
-	//-----IAccessibility2 Implementation 2009
 	//public, weil der eine oder andere die Methode rufen darf um das
 	//Prepare zu sparen - mit Vorsicht zu geniessen!
 	void Init();
diff --git a/main/sw/source/core/inc/viewimp.hxx b/main/sw/source/core/inc/viewimp.hxx
index ea98458..a08e7bb 100644
--- a/main/sw/source/core/inc/viewimp.hxx
+++ b/main/sw/source/core/inc/viewimp.hxx
@@ -286,11 +286,9 @@
 
 	inline void AddAccessibleObj( const SdrObject *pObj );
 
-	//IAccessibility2 Implementation 2009-----
 	void FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage);
 	void FireSectionChangeEvent(sal_uInt16 nOldSection, sal_uInt16 nNewSection);
 	void FireColumnChangeEvent(sal_uInt16 nOldColumn, sal_uInt16 nNewColumn);
-	//-----IAccessibility2 Implementation 2009
 
 	// Invalidate accessible frame's frame's content
 	void InvalidateAccessibleFrmContent( const SwFrm *pFrm );
diff --git a/main/sw/source/core/layout/wsfrm.cxx b/main/sw/source/core/layout/wsfrm.cxx
index 1d3afab..f0db1f6 100644
--- a/main/sw/source/core/layout/wsfrm.cxx
+++ b/main/sw/source/core/layout/wsfrm.cxx
@@ -88,6 +88,8 @@
 
 SwFrm::SwFrm( SwModify *pMod, SwFrm* pSib ) :
 	SwClient( pMod ),
+	//Solution:Add a member to identify if the acc table should dispose
+	bIfAccTableShouldDisposing( sal_False ),
     // --> OD 2006-05-10 #i65250#
     mnFrmId( SwFrm::mnLastFrmId++ ),
     // <--
@@ -96,10 +98,6 @@
     pNext( 0 ),
     pPrev( 0 ),
     pDrawObjs( 0 )
-	//IAccessibility2 Implementation 2009-----
-	//Solution:Add a member to identify if the acc table should dispose
-	, bIfAccTableShouldDisposing( sal_False )
-	//-----IAccessibility2 Implementation 2009
     , bInfBody( sal_False )
     , bInfTab ( sal_False )
     , bInfFly ( sal_False )
diff --git a/main/sw/source/core/ole/ndole.cxx b/main/sw/source/core/ole/ndole.cxx
index ba7e084..5e02de8 100644
--- a/main/sw/source/core/ole/ndole.cxx
+++ b/main/sw/source/core/ole/ndole.cxx
@@ -794,7 +794,6 @@
 	}
 }
 
-//IAccessibility2 Implementation 2009-----
 String SwOLEObj::GetStyleString()
 {
 	String strStyle;
@@ -802,7 +801,6 @@
 		strStyle = xOLERef.GetChartType();
 	return strStyle;
 }
-//-----IAccessibility2 Implementation 2009
 sal_Bool SwOLEObj::IsOleRef() const
 {
     return xOLERef.is();
diff --git a/main/sw/source/core/swg/SwXMLTextBlocks1.cxx b/main/sw/source/core/swg/SwXMLTextBlocks1.cxx
index 7e76055..352ab22 100644
--- a/main/sw/source/core/swg/SwXMLTextBlocks1.cxx
+++ b/main/sw/source/core/swg/SwXMLTextBlocks1.cxx
@@ -70,7 +70,7 @@
 		try
 		{
             xRoot = xBlkRoot->openStorageElement( aFolderName, embed::ElementModes::READ );
-            xMedium = new SfxMedium(xRoot, GetBaseURL(), S2U("writer8"));
+            xMedium = new SfxMedium(xRoot, GetBaseURL(), OUString::createFromAscii("writer8"));
             SwReader aReader(*xMedium,aFolderName, pDoc );
             ReadXML->SetBlockMode( sal_True );
             aReader.Read( *ReadXML );
diff --git a/main/sw/source/core/text/frmform.cxx b/main/sw/source/core/text/frmform.cxx
index d505579..717dd01 100644
--- a/main/sw/source/core/text/frmform.cxx
+++ b/main/sw/source/core/text/frmform.cxx
@@ -57,11 +57,9 @@
 #include <frmfmt.hxx>	  	// SwFrmFmt
 // OD 2004-05-24 #i28701#
 #include <sortedobjs.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <portab.hxx>
 #include <editeng/lrspitem.hxx>
 #include <editeng/tstpitem.hxx>
-//-----IAccessibility2 Implementation 2009
 
 class FormatLevel
 {
@@ -561,7 +559,6 @@
     UNDO_SWAP( this )
 }
 
-//IAccessibility2 Implementation 2009-----
 com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop > SwTxtFrm::GetTabStopInfo( SwTwips CurrentPos )
 {
 	com::sun::star::uno::Sequence< ::com::sun::star::style::TabStop > tabs(1);
@@ -601,7 +598,6 @@
 	tabs[0] = ts;
 	return tabs;
 }
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
  *						SwTxtFrm::AdjustFollow()
  *************************************************************************/
diff --git a/main/sw/source/core/text/porfld.cxx b/main/sw/source/core/text/porfld.cxx
index 234580d..4e3ea47 100644
--- a/main/sw/source/core/text/porfld.cxx
+++ b/main/sw/source/core/text/porfld.cxx
@@ -88,9 +88,7 @@
     , m_bNoLength( sal_False )
 {
     SetWhichPor( POR_FLD );
-	//IAccessibility2 Implementation 2009-----
 	m_nAttrFldType = 0;
-	//-----IAccessibility2 Implementation 2009
 }
 
 SwFldPortion::SwFldPortion( const SwFldPortion& rFld )
@@ -471,12 +469,10 @@
 void SwFldPortion::HandlePortion( SwPortionHandler& rPH ) const
 {
     rPH.Special( GetLen(), aExpand, GetWhichPor() );
-    //IAccessibility2 Implementation 2009-----
     if( GetWhichPor() == POR_FLD )
     {
     	rPH.SetAttrFieldType(m_nAttrFldType);
     }
-    //-----IAccessibility2 Implementation 2009
 }
 
 /*************************************************************************
diff --git a/main/sw/source/core/text/porfld.hxx b/main/sw/source/core/text/porfld.hxx
index 2dfa641..561eb22 100644
--- a/main/sw/source/core/text/porfld.hxx
+++ b/main/sw/source/core/text/porfld.hxx
@@ -65,9 +65,7 @@
     SwFldPortion( const XubString &rExpand, SwFont *pFnt = 0, sal_Bool bPlaceHolder = sal_False );
 	~SwFldPortion();
 
-	//IAccessibility2 Implementation 2009-----
 	sal_uInt16 m_nAttrFldType;
-	//-----IAccessibility2 Implementation 2009
 	void TakeNextOffset( const SwFldPortion* pFld );
 	void CheckScript( const SwTxtSizeInfo &rInf );
 	inline sal_Bool HasFont() const { return 0 != pFnt; }
diff --git a/main/sw/source/core/text/txtfld.cxx b/main/sw/source/core/text/txtfld.cxx
index d2cd15d..5a06381 100644
--- a/main/sw/source/core/text/txtfld.cxx
+++ b/main/sw/source/core/text/txtfld.cxx
@@ -59,14 +59,12 @@
 #include "fmtmeta.hxx" // lcl_NewMetaPortion
 
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _REFFLD_HXX
 #include "reffld.hxx"
 #endif
 #ifndef _FLDDAT_HXX
 #include "flddat.hxx"
 #endif
-//-----IAccessibility2 Implementation 2009
 /*************************************************************************
  *                      SwTxtFormatter::NewFldPortion()
  *************************************************************************/
@@ -98,9 +96,7 @@
 	SwCharFmt* pChFmt = 0;
 	sal_Bool bNewFlyPor = sal_False,
 		 bINet = sal_False;
-	//IAccessibility2 Implementation 2009-----
 	sal_uInt16 subType;
-	//-----IAccessibility2 Implementation 2009
 	// set language
 	((SwTxtFormatter*)this)->SeekAndChg( rInf );
 	if (pFld->GetLanguage() != GetFnt()->GetLanguage())
@@ -172,10 +168,8 @@
                         : pFld->ExpandField(bInClipboard) );
                 pRet = new SwFldPortion( str );
             }
-            //IAccessibility2 Implementation 2009-----
             if(pRet)
                 ((SwFldPortion*)pRet)->m_nAttrFldType= ATTR_PAGECOOUNTFLD;
-            //-----IAccessibility2 Implementation 2009
             break;
 
 		case RES_PAGENUMBERFLD:
@@ -202,10 +196,8 @@
                         : pFld->ExpandField(bInClipboard) );
                 pRet = new SwFldPortion( str );
             }
-            //IAccessibility2 Implementation 2009-----
             if(pRet)
                 ((SwFldPortion*)pRet)->m_nAttrFldType= ATTR_PAGENUMBERFLD;
-            //-----IAccessibility2 Implementation 2009
             break;
 		}
 		case RES_GETEXPFLD:
@@ -281,7 +273,6 @@
 			bNewFlyPor = sal_True;
             bPlaceHolder = sal_True;
 			break;
-		//IAccessibility2 Implementation 2009-----
 		case RES_GETREFFLD:
 			subType = ((SwGetRefField*)pFld)->GetSubType();			
             {
@@ -314,7 +305,6 @@
 					((SwFldPortion*)pRet)->m_nAttrFldType = ATTR_TIMEFLD;
 				break;
 			}
-		//-----IAccessibility2 Implementation 2009
 		default:
             {
                 String const str( (bName)
diff --git a/main/sw/source/core/unocore/unodraw.cxx b/main/sw/source/core/unocore/unodraw.cxx
index 499d437..2a6ca92 100644
--- a/main/sw/source/core/unocore/unodraw.cxx
+++ b/main/sw/source/core/unocore/unodraw.cxx
@@ -2067,7 +2067,7 @@
             {
                 uno::Any aPos;
                 aPos <<= xTextRange;
-                setPropertyValue(S2U("TextRange"), aPos);
+                setPropertyValue( C2U("TextRange"), aPos);
                 uno::Reference< drawing::XShape > xTemp( (cppu::OWeakObject*) this, uno::UNO_QUERY );
                 xDP->add( xTemp );
             }
diff --git a/main/sw/source/core/unocore/unoframe.cxx b/main/sw/source/core/unocore/unoframe.cxx
index 92ffa2a..12dec8f 100644
--- a/main/sw/source/core/unocore/unoframe.cxx
+++ b/main/sw/source/core/unocore/unoframe.cxx
@@ -2582,7 +2582,7 @@
 		if(!pNewStartNode || pNewStartNode != pOwnStartNode)
 		{
 			uno::RuntimeException aExcept;
-            aExcept.Message = S2U("no text available");
+            aExcept.Message = C2U("no text available");
 			throw aExcept;
 		}
 
diff --git a/main/sw/source/core/unocore/unomap.cxx b/main/sw/source/core/unocore/unomap.cxx
index 3cfb510..98bf96e 100644
--- a/main/sw/source/core/unocore/unomap.cxx
+++ b/main/sw/source/core/unocore/unomap.cxx
@@ -482,7 +482,6 @@
                     { SW_PROP_NMID(UNO_NAME_IS_FIELD_USED),      FIELD_PROP_IS_FIELD_USED,      CPPU_E2T(CPPUTYPE_FLOAT), PropertyAttribute::READONLY, 0},\
                     { SW_PROP_NMID(UNO_NAME_IS_FIELD_DISPLAYED), FIELD_PROP_IS_FIELD_DISPLAYED, CPPU_E2T(CPPUTYPE_INT16), PropertyAttribute::READONLY, 0},\
 
-//IAccessibility2 Implementation 2009-----
 #define COMMON_ACCESSIBILITY_TEXT_ATTRIBUTE \
 					{ SW_PROP_NMID(UNO_NAME_CHAR_BACK_COLOR), RES_CHRATR_BACKGROUND, 	CPPU_E2T(CPPUTYPE_INT32),			PROPERTY_NONE ,MID_BACK_COLOR		 },	\
 					{ SW_PROP_NMID(UNO_NAME_CHAR_COLOR), RES_CHRATR_COLOR, 		CPPU_E2T(CPPUTYPE_INT32),			PROPERTY_NONE, 0},	\
@@ -507,7 +506,6 @@
 					{ SW_PROP_NMID(UNO_NAME_PARA_RIGHT_MARGIN), RES_LR_SPACE,           CPPU_E2T(CPPUTYPE_INT32),           PropertyAttribute::MAYBEVOID, MID_R_MARGIN|CONVERT_TWIPS},	\
 					{ SW_PROP_NMID(UNO_NAME_TABSTOPS), RES_PARATR_TABSTOP,   CPPU_E2T(CPPUTYPE_SEQTABSTOP),   PropertyAttribute::MAYBEVOID, CONVERT_TWIPS},	\
 
-//-----IAccessibility2 Implementation 2009
 
 const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(sal_uInt16 nPropertyId)
 {
@@ -526,7 +524,6 @@
                 aMapEntriesArr[nPropertyId] = aCharAndParaMap_Impl;
 			}
 			break;
-			//IAccessibility2 Implementation 2009-----
 			case PROPERTY_MAP_ACCESSIBILITY_TEXT_ATTRIBUTE:
 			{
                 static SfxItemPropertyMapEntry aAccessibilityTextAttrMap_Impl[] =
@@ -537,7 +534,6 @@
                 aMapEntriesArr[nPropertyId] = aAccessibilityTextAttrMap_Impl;
 			}
 			break;
-			//-----IAccessibility2 Implementation 2009
 			case PROPERTY_MAP_PARAGRAPH:
 			{
                 static SfxItemPropertyMapEntry aParagraphMap_Impl[] =
diff --git a/main/sw/source/core/unocore/unotext.cxx b/main/sw/source/core/unocore/unotext.cxx
index d23128f..ef1e35f 100644
--- a/main/sw/source/core/unocore/unotext.cxx
+++ b/main/sw/source/core/unocore/unotext.cxx
@@ -2874,7 +2874,7 @@
     if (!pNewStartNode || (pNewStartNode != pOwnStartNode))
     {
         uno::RuntimeException aExcept;
-        aExcept.Message = S2U("no text available");
+        aExcept.Message = C2U("no text available");
         throw aExcept;
     }
     xRet = static_cast<text::XWordCursor*>(pXCursor);
diff --git a/main/sw/source/core/view/viewimp.cxx b/main/sw/source/core/view/viewimp.cxx
index bda5284..35d6575 100644
--- a/main/sw/source/core/view/viewimp.cxx
+++ b/main/sw/source/core/view/viewimp.cxx
@@ -446,7 +446,6 @@
 	} while ( pTmp != pVSh );
 }
 
-//IAccessibility2 Implementation 2009-----
 void SwViewImp::FirePageChangeEvent(sal_uInt16 nOldPage, sal_uInt16 nNewPage)
 {
 	if( IsAccessible() )
@@ -463,7 +462,6 @@
 	if( IsAccessible() )
 		GetAccessibleMap().FireColumnChangeEvent(nOldColumn,  nNewColumn);
 }
-//-----IAccessibility2 Implementation 2009
 void SwViewImp::InvalidateAccessibleFrmContent( const SwFrm *pFrm )
 {
 	ASSERT( pFrm->IsAccessibleFrm(), "frame is not accessible" );
diff --git a/main/sw/source/filter/ww8/rtfexport.hxx b/main/sw/source/filter/ww8/rtfexport.hxx
index d186a0a..8cc1892 100644
--- a/main/sw/source/filter/ww8/rtfexport.hxx
+++ b/main/sw/source/filter/ww8/rtfexport.hxx
@@ -46,6 +46,9 @@
 class SwOLENode;
 class SwSectionNode;
 class SwNumRuleTbl;
+class SvStream;
+
+inline SvStream& operator<<( SvStream& s, const rtl::OString r) { return (s << r.getStr()); }
 
 namespace com { namespace sun { namespace star {
     namespace frame { class XModel; }
diff --git a/main/sw/source/filter/ww8/rtfsdrexport.cxx b/main/sw/source/filter/ww8/rtfsdrexport.cxx
index b7f018c..599c906 100644
--- a/main/sw/source/filter/ww8/rtfsdrexport.cxx
+++ b/main/sw/source/filter/ww8/rtfsdrexport.cxx
@@ -469,7 +469,7 @@
     m_rAttrOutput.RunText().append(OOO_STRING_SVTOOLS_RTF_SHPBYIGNORE);
 
     for(std::map<OString,OString>::reverse_iterator i = m_aShapeProps.rbegin(); i != m_aShapeProps.rend(); i++)
-        lcl_AppendSP(m_rAttrOutput.RunText(), (*i).first, (*i).second );
+        lcl_AppendSP(m_rAttrOutput.RunText(), (*i).first.getStr(), (*i).second );
     
     lcl_AppendSP(m_rAttrOutput.RunText(), "wzDescription", RtfExport::OutString( m_pSdrObject->GetDescription(), m_rExport.eCurrentEncoding));
     lcl_AppendSP(m_rAttrOutput.RunText(), "wzName", RtfExport::OutString( m_pSdrObject->GetTitle(), m_rExport.eCurrentEncoding));
diff --git a/main/sw/source/filter/xml/xmltbli.cxx b/main/sw/source/filter/xml/xmltbli.cxx
index 48af0a6..e2704e1 100644
--- a/main/sw/source/filter/xml/xmltbli.cxx
+++ b/main/sw/source/filter/xml/xmltbli.cxx
@@ -2081,7 +2081,7 @@
     {
         // set style
         const SfxItemSet *pAutoItemSet = 0;
-        if( pCell->GetStartNode() && sStyleName &&
+        if( pCell->GetStartNode() && !sStyleName.isEmpty() &&
             GetSwImport().FindAutomaticStyle(
                 XML_STYLE_FAMILY_TABLE_CELL, sStyleName, &pAutoItemSet ) )
         {
diff --git a/main/sw/source/ui/app/docsh.cxx b/main/sw/source/ui/app/docsh.cxx
index 39a6cc9..89aa12b 100644
--- a/main/sw/source/ui/app/docsh.cxx
+++ b/main/sw/source/ui/app/docsh.cxx
@@ -103,9 +103,7 @@
 #include <unotools/fltrcfg.hxx>
 #include <svtools/htmlcfg.hxx>
 #include <sfx2/fcontnr.hxx>
-//IAccessibility2 Implementation 2009-----
 #include <sfx2/viewfrm.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <sfx2/objface.hxx>
 #include <comphelper/storagehelper.hxx>
 
@@ -404,7 +402,6 @@
 {
 	RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722",  "SwDocShell::SaveAs" );
 
-	//IAccessibility2 Implementation 2009-----
 	pDoc->setDocAccTitle(String());
     SfxViewFrame* pFrame1 = SfxViewFrame::GetFirst( this );
 	if (pFrame1)
@@ -419,7 +416,6 @@
 			}
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 	SwWait aWait( *this, sal_True );
     //#i3370# remove quick help to prevent saving of autocorrection suggestions
     if(pView)
@@ -1285,7 +1281,6 @@
 /* -----------------------------12.02.01 12:08--------------------------------
 
  ---------------------------------------------------------------------------*/
-//IAccessibility2 Implementation 2009-----
 void SwDocShell::setDocAccTitle( const String& rTitle )
 { 
 	if (pDoc ) 
@@ -1320,7 +1315,6 @@
 	
 	return sal_False;
 }
-//-----IAccessibility2 Implementation 2009
 
 static const char* s_EventNames[] =
 {
diff --git a/main/sw/source/ui/cctrl/actctrl.cxx b/main/sw/source/ui/cctrl/actctrl.cxx
index 8a1c04c..c6f88fa 100644
--- a/main/sw/source/ui/cctrl/actctrl.cxx
+++ b/main/sw/source/ui/cctrl/actctrl.cxx
@@ -105,13 +105,11 @@
 		SetText(sTemp);
 		SetSelection(aSel);
 	}
-//IAccessibility2 Impplementaton 2009-----
 	Edit::Modify();
 	/*
 	if(GetModifyHdl().IsSet())
 		GetModifyHdl().Call(this);
 		*/
-//-----IAccessibility2 Impplementaton 2009
 }
 /* -----------------25.06.2003 15:57-----------------
 
diff --git a/main/sw/source/ui/cctrl/swlbox.cxx b/main/sw/source/ui/cctrl/swlbox.cxx
index 0a8da87..399b983 100644
--- a/main/sw/source/ui/cctrl/swlbox.cxx
+++ b/main/sw/source/ui/cctrl/swlbox.cxx
@@ -223,11 +223,9 @@
 	return aTxt;
 }
 
-//IAccessibility2 Impplementaton 2009-----
 void SwComboBox::SetText( const XubString& rStr )
 {
 	ComboBox::SetText(rStr);
 	// MT: CallEventListeners stay protected for now. Probably not needed at all, as the implementation of VCLXAccessibelEdit/ComboBox should do it on text changed nowadays anyway. Verify.
 	// CallEventListeners( VCLEVENT_EDIT_MODIFY );
 }
-//-----IAccessibility2 Impplementaton 2009
diff --git a/main/sw/source/ui/chrdlg/swuiccoll.cxx b/main/sw/source/ui/chrdlg/swuiccoll.cxx
index f916321..3aeb480 100644
--- a/main/sw/source/ui/chrdlg/swuiccoll.cxx
+++ b/main/sw/source/ui/chrdlg/swuiccoll.cxx
@@ -127,7 +127,6 @@
 			break;
 	}
 
-//IAccessibility2 Impplementaton 2009-----
 	if( pFamilyItem )
 	{
 		const SfxStyleFilter& rFilterList = pFamilyItem->GetFilterList();
@@ -137,7 +136,6 @@
 			sal_uInt16* pFilter = new sal_uInt16(rFilterList.GetObject(i)->nFlags);
 			aFilterLB.SetEntryData(i, pFilter);
 		}
-//-----IAccessibility2 Impplementaton 2009
 	}
 	aFilterLB.SelectEntryPos(1);
 
diff --git a/main/sw/source/ui/config/optpage.cxx b/main/sw/source/ui/config/optpage.cxx
index 9b9f640..9daaec5 100644
--- a/main/sw/source/ui/config/optpage.cxx
+++ b/main/sw/source/ui/config/optpage.cxx
@@ -1974,13 +1974,11 @@
 	aLk = LINK(this, SwRedlineOptionsTabPage, ChangedMaskPrevHdl);
 	aMarkPosLB.SetSelectHdl( aLk );
 	aMarkColorLB.SetSelectHdl( aLk );
-//IAccessibility2 Impplementaton 2009-----
 	//solution: set different accessible name of four color box
 	aInsertColorLB.SetAccessibleName(::rtl::OUString( aInsertFT.GetDisplayText()) + ::rtl::OUString(aInsertColorFT.GetDisplayText()));
 	aDeletedColorLB.SetAccessibleName(::rtl::OUString( aDeletedFT.GetDisplayText()) + ::rtl::OUString( aDeletedColorFT.GetDisplayText()));
 	aChangedColorLB.SetAccessibleName(::rtl::OUString( aChangedFT.GetDisplayText()) + ::rtl::OUString( aChangedColorFT.GetDisplayText()));
 	aMarkColorLB.SetAccessibleName(::rtl::OUString( aMarkPosFT.GetDisplayText()) + ::rtl::OUString( aMarkColorFT.GetDisplayText()));
-//-----IAccessibility2 Impplementaton 2009
 }
 
 SwRedlineOptionsTabPage::~SwRedlineOptionsTabPage()
diff --git a/main/sw/source/ui/dialog/uiregionsw.cxx b/main/sw/source/ui/dialog/uiregionsw.cxx
index e1b9408..756a690 100644
--- a/main/sw/source/ui/dialog/uiregionsw.cxx
+++ b/main/sw/source/ui/dialog/uiregionsw.cxx
@@ -457,9 +457,7 @@
 	aPasswdPB.SetAccessibleRelationMemberOf(&aProtectFL);
 	aPasswdPB.SetAccessibleRelationLabeledBy(&aPasswdCB);
     aSubRegionED.SetAccessibleName(aSubRegionFT.GetText());
-//IAccessibility2 Impplementaton 2009-----
 	aTree.SetAllEntriesAccessibleRoleType(TREEBOX_ALLITEM_ACCROLE_TYPE_TREE);
-//-----IAccessibility2 Impplementaton 2009
 }
 /* -----------------------------26.04.01 14:56--------------------------------
 
diff --git a/main/sw/source/ui/docvw/access.src b/main/sw/source/ui/docvw/access.src
index 6f9b702..1a9edf2 100644
--- a/main/sw/source/ui/docvw/access.src
+++ b/main/sw/source/ui/docvw/access.src
@@ -96,7 +96,6 @@
     Text [ en-US ] = "Activate this button to open a list of actions which can be performed on this comment and other comments";
 };
 
-//IAccessibility2 Implementation 2009-----
 String STR_ACCESS_PREVIEW_DOC_NAME
 {
 	Text [ en-US ] = "Document preview";
@@ -113,5 +112,4 @@
 {
 	Text [ en-US ] = "(read-only)";
 };
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sw/source/ui/docvw/edtwin.cxx b/main/sw/source/ui/docvw/edtwin.cxx
index 895e255..d4d74f8 100644
--- a/main/sw/source/ui/docvw/edtwin.cxx
+++ b/main/sw/source/ui/docvw/edtwin.cxx
@@ -5759,7 +5759,6 @@
         return Selection( nPos - nStartPos, nPos - nStartPos );
     }
 }
-//IAccessibility2 Implementation 2009-----
 // MT: Removed Windows::SwitchView() introduced with IA2 CWS.
 // There are other notifications for this when the active view has chnaged, so please update the code to use that event mechanism
 void SwEditWin::SwitchView()
@@ -5772,4 +5771,3 @@
 	rView.GetWrtShell().InvalidateAccessibleFocus();
 #endif
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/docvw/edtwin3.cxx b/main/sw/source/ui/docvw/edtwin3.cxx
index 2bef6ed..84e00e2 100644
--- a/main/sw/source/ui/docvw/edtwin3.cxx
+++ b/main/sw/source/ui/docvw/edtwin3.cxx
@@ -142,7 +142,6 @@
     return !rRuler.StartDocDrag( rMEvt, RULER_TYPE_INDENT);
 }
 // <--
-//IAccessibility2 Impplementaton 2009-----
 void AccessibilityScrollMDI(ViewShell* pVwSh, const SwRect& rRect , sal_uInt16 nRangeX, sal_uInt16 nRangeY, sal_Bool isLeftTop)
 {
 	SfxViewShell *pSfxVwSh = pVwSh->GetSfxViewShell();
@@ -169,7 +168,6 @@
 	}
 
 }
-//-----IAccessibility2 Impplementaton 2009
 
 LAYOUT_NS Dialog* GetSearchDialog()
 {
diff --git a/main/sw/source/ui/frmdlg/column.cxx b/main/sw/source/ui/frmdlg/column.cxx
index 135f444..98054a6 100644
--- a/main/sw/source/ui/frmdlg/column.cxx
+++ b/main/sw/source/ui/frmdlg/column.cxx
@@ -517,7 +517,6 @@
 							| WB_ITEMBORDER
 							| WB_DOUBLEBORDER );
 
-//IAccessibility2 Impplementaton 2009-----
     for( i = 0; i < 5; i++)
 		//Solution:Set accessible name one be one
 		//aDefaultVS.InsertItem( i + 1, i );
@@ -545,7 +544,6 @@
 			}
 			aDefaultVS.InsertItem( i + 1,  aItemText, i );
 		}
-//-----IAccessibility2 Impplementaton 2009
 
 	aDefaultVS.SetSelectHdl(LINK(this, SwColumnPage, SetDefaultsHdl));
 
@@ -995,14 +993,12 @@
 	// #i17816# changing the displayed types within the ValueSet
 	//from two columns to two columns with different settings doesn't invalidate the
 	// example windows in ::ColModify()
-//IAccessibility2 Impplementaton 2009-----
 // the pColMgr->GetCount()'s return is some how bugged,
 // it will return 0 when actual count is 1, so fix it.
     //if(!pNF ||(pColMgr->GetCount() != nCols))
 	int nTemp = pColMgr->GetCount();
 	if(nTemp == 0) nTemp = 1;
     if( nTemp != nCols )
-//-----IAccessibility2 Impplementaton 2009
     {
         if(pNF)
             aDefaultVS.SetNoSelection();
diff --git a/main/sw/source/ui/frmdlg/column.hrc b/main/sw/source/ui/frmdlg/column.hrc
index d31a3a1..31d5eef 100644
--- a/main/sw/source/ui/frmdlg/column.hrc
+++ b/main/sw/source/ui/frmdlg/column.hrc
@@ -75,15 +75,11 @@
 #define FT_TEXTDIRECTION        60
 #define LB_TEXTDIRECTION        61
 #define FL_VERT                 62
-//IAccessibility2 Impplementaton 2009-----
 #define STR_PAGESETUP_SPACING		32765
-//-----IAccessibility2 Impplementaton 2009
 #define LISTBOX_SELECTION		0
 #define LISTBOX_SECTION			1
 #define LISTBOX_SECTIONS		2
 #define LISTBOX_PAGE			3
 #define LISTBOX_FRAME			4
 
-//IAccessibility2 Impplementaton 2009-----
 #define STR_COLUMN_WIDTH	63
-//-----IAccessibility2 Impplementaton 2009
diff --git a/main/sw/source/ui/frmdlg/column.src b/main/sw/source/ui/frmdlg/column.src
index 64d5ad2..5f284b1 100644
--- a/main/sw/source/ui/frmdlg/column.src
+++ b/main/sw/source/ui/frmdlg/column.src
@@ -414,7 +414,6 @@
 	Text [ en-US ] = "Columns";
 };
 
-//IAccessibility2 Impplementaton 2009-----
 String STR_ACCESS_PAGESETUP_SPACING
 {	
 	Text [ en-US ] = "Spacing between %1 and %2";
@@ -424,4 +423,3 @@
 {
 	Text [ en-US ] = "Column %1 Width";
 };
-//-----IAccessibility2 Impplementaton 2009
diff --git a/main/sw/source/ui/frmdlg/frmpage.cxx b/main/sw/source/ui/frmdlg/frmpage.cxx
index 24c4c5b..a510217 100644
--- a/main/sw/source/ui/frmdlg/frmpage.cxx
+++ b/main/sw/source/ui/frmdlg/frmpage.cxx
@@ -639,7 +639,6 @@
 
 namespace
 {
-	//IAccessibility2 Implementation 2009-----
 	void HandleAutoCB( sal_Bool _bChecked, FixedText& _rFT_man, FixedText& _rFT_auto, PercentField& _rPF_Edit)
 	{
 		_rFT_man.Show( !_bChecked );
@@ -647,7 +646,6 @@
 		String accName = _bChecked ? _rFT_auto.GetText() : _rFT_man.GetText();
 		_rPF_Edit.SetAccessibleName(accName);
 	}
-	//-----IAccessibility2 Implementation 2009
 }
 
 
@@ -2095,18 +2093,14 @@
 IMPL_LINK( SwFrmPage, AutoWidthClickHdl, void*, EMPTYARG )
 {
 	if( !IsInGraficMode() )
-		//IAccessibility2 Implementation 2009-----
 		HandleAutoCB( aAutoWidthCB.IsChecked(), aWidthFT, aWidthAutoFT, aWidthED );
-		//-----IAccessibility2 Implementation 2009
 	return 0;
 }
 
 IMPL_LINK( SwFrmPage, AutoHeightClickHdl, void*, EMPTYARG )
 {
 	if( !IsInGraficMode() )
-		//IAccessibility2 Implementation 2009-----
 		HandleAutoCB( aAutoHeightCB.IsChecked(), aHeightFT, aHeightAutoFT, aWidthED );
-		//-----IAccessibility2 Implementation 2009
 	return 0;
 }
 
@@ -2255,18 +2249,14 @@
 		SwFrmSize eSize = rSize.GetHeightSizeType();
 		sal_Bool bCheck = eSize != ATT_FIX_SIZE;
 		aAutoHeightCB.Check( bCheck );
-		//IAccessibility2 Implementation 2009-----
 		HandleAutoCB( bCheck, aHeightFT, aHeightAutoFT, aWidthED );
-		//-----IAccessibility2 Implementation 2009
 		if( eSize == ATT_VAR_SIZE )
 			aHeightED.SetValue( aHeightED.GetMin(), FUNIT_NONE );
 
 		eSize = rSize.GetWidthSizeType();
 		bCheck = eSize != ATT_FIX_SIZE;
 		aAutoWidthCB.Check( bCheck );
-		//IAccessibility2 Implementation 2009-----
 		HandleAutoCB( bCheck, aWidthFT, aWidthAutoFT, aWidthED );
-		//-----IAccessibility2 Implementation 2009
 		if( eSize == ATT_VAR_SIZE )
 			aWidthED.SetValue( aWidthED.GetMin(), FUNIT_NONE );
 
diff --git a/main/sw/source/ui/inc/conttree.hxx b/main/sw/source/ui/inc/conttree.hxx
index 027e337..ad01d47 100644
--- a/main/sw/source/ui/inc/conttree.hxx
+++ b/main/sw/source/ui/inc/conttree.hxx
@@ -36,10 +36,8 @@
 class SwGlblDocContent;
 class SfxObjectShell;
 
-//IAccessibility2 Implementation 2009-----
 //Solution:  Include  SdrObject  class
 class SdrObject;
-//-----IAccessibility2 Implementation 2009
 
 #define EDIT_MODE_EDIT			0
 #define EDIT_MODE_UPD_IDX   	1
@@ -93,10 +91,8 @@
 	sal_Bool				bIsImageListInitialized : 1;
 
 	static sal_Bool			bIsInDrag;
-	//IAccessibility2 Implementation 2009-----
 	sal_Bool                bIsKeySpace;
 	Rectangle 		    oldRectangle;
-	//-----IAccessibility2 Implementation 2009
 	void 				FindActiveTypeAndRemoveUserData();
 
     using SvLBox::ExecuteDrop;
@@ -151,11 +147,9 @@
 public:
 	SwContentTree(Window* pParent, const ResId& rResId);
 	~SwContentTree();
-	//IAccessibility2 Implementation 2009-----
 	String  		GetEntryAltText( SvLBoxEntry* pEntry ) const;
 	String  		GetEntryLongDescription( SvLBoxEntry* pEntry ) const;
 	SdrObject* 	GetDrawingObjectsByContent(const SwContent *pCnt);
-	//-----IAccessibility2 Implementation 2009
 
 	sal_Bool			ToggleToRoot();
 	sal_Bool 			IsRoot() const {return bIsRoot;}
@@ -208,9 +202,7 @@
 	virtual void    KeyInput(const KeyEvent& rKEvt);
 	
 	virtual sal_Bool	Select( SvLBoxEntry* pEntry, sal_Bool bSelect=sal_True );
-	//IAccessibility2 Implementation 2009-----
 	virtual sal_Int32  GetEntryRealChildsNum( SvLBoxEntry* pEntry ) const;
-	//-----IAccessibility2 Implementation 2009
 };
 
 
diff --git a/main/sw/source/ui/inc/edtwin.hxx b/main/sw/source/ui/inc/edtwin.hxx
index b7997f1..3343290 100644
--- a/main/sw/source/ui/inc/edtwin.hxx
+++ b/main/sw/source/ui/inc/edtwin.hxx
@@ -297,9 +297,7 @@
 
     SwEditWin(Window *pParent, SwView &);
 	virtual ~SwEditWin();
-	//IAccessibility2 Implementation 2009-----
 	virtual void SwitchView();
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/sw/source/ui/inc/pview.hxx b/main/sw/source/ui/inc/pview.hxx
index ac7b46a..40c7dae 100644
--- a/main/sw/source/ui/inc/pview.hxx
+++ b/main/sw/source/ui/inc/pview.hxx
@@ -164,9 +164,7 @@
     virtual ::com::sun::star::uno::Reference<
         ::com::sun::star::accessibility::XAccessible>
                     CreateAccessible();
-	//IAccessibility2 Implementation 2009-----
 	virtual void SwitchView();
-	//-----IAccessibility2 Implementation 2009
 };
 
 
@@ -178,8 +176,7 @@
 {
 	// ViewWindow und Henkel zur Core
 	// aktuelle Dispatcher-Shell
-	SwPagePreViewWin*        pViewWin;//IAccessibility2 Implementation 2009
-	//viewdata of the previous SwView and the new crsrposition
+	SwPagePreViewWin*        pViewWin;	//viewdata of the previous SwView and the new crsrposition
 	String 					sSwViewData,
 	//and the new cursor position if the user double click in the PagePreView
 							sNewCrsrPos;
diff --git a/main/sw/source/ui/inc/swlbox.hxx b/main/sw/source/ui/inc/swlbox.hxx
index de157c4..35401f2 100644
--- a/main/sw/source/ui/inc/swlbox.hxx
+++ b/main/sw/source/ui/inc/swlbox.hxx
@@ -115,7 +115,6 @@
 	void					SetStyle(const sal_uInt16 nSt) 	{ nStyle = nSt; 	}
 
 	String					GetText() const;
-//IAccessibility2 Impplementaton 2009-----
 	void					SetText( const XubString& rStr );
 	void					SetText( const XubString& rStr, const Selection& rNewSelection ) { ComboBox::SetText( rStr, rNewSelection ); };
 };
diff --git a/main/sw/source/ui/inc/swuicnttab.hxx b/main/sw/source/ui/inc/swuicnttab.hxx
index e6de6aa..69781a3 100644
--- a/main/sw/source/ui/inc/swuicnttab.hxx
+++ b/main/sw/source/ui/inc/swuicnttab.hxx
@@ -286,12 +286,10 @@
 	Link			aButtonSelectedHdl;
 	Control*		pActiveCtrl;
 	Link			aModifyHdl;
-//IAccessibility2 Impplementaton 2009-----
 	String 	 	accessibleName;
 	String		sAdditionalAccnameString1;
 	String		sAdditionalAccnameString2;
 	String		sAdditionalAccnameString3;
-//-----IAccessibility2 Impplementaton 2009
 
 	SwTOXEntryTabPage*	m_pParent;
 
@@ -343,11 +341,9 @@
 
 	virtual void		Resize();
     virtual void        GetFocus();
-//IAccessibility2 Impplementaton 2009-----
 	void SetFocus2theAllBtn();
 private:	
 	sal_uInt32 GetControlIndex(FormTokenType eType, const Control* pCurControl) const;
-//-----IAccessibility2 Impplementaton 2009
 };
 /* -----------------------------23.12.99 14:16--------------------------------
 
@@ -493,10 +489,8 @@
 	String 				GetLevelHelp(sal_uInt16 nLevel) const;
 
 	void 				PreTokenButtonRemoved(const SwFormToken& rToken);
-//IAccessibility2 Impplementaton 2009-----
 	void SetFocus2theAllBtn();
 	virtual long Notify( NotifyEvent& rNEvt );
-//-----IAccessibility2 Impplementaton 2009
 };
 /* -----------------05.07.99 13:00-------------------
 
diff --git a/main/sw/source/ui/inc/view.hxx b/main/sw/source/ui/inc/view.hxx
index 345f954..1908b6d 100644
--- a/main/sw/source/ui/inc/view.hxx
+++ b/main/sw/source/ui/inc/view.hxx
@@ -200,10 +200,8 @@
 						sNewCrsrPos;
     // to support keyboard the number of the page to go to can be set too
     sal_uInt16              nNewPage;
-	//IAccessibility2 Implementation 2009-----
 	sal_uInt16			nOldPageNum;
 	String			nOldSectionName;
-	//-----IAccessibility2 Implementation 2009
 	Point				aTabColFromDocPos;	//Verschieben von Tabellenspalten aus
 											//aus dem Dokument heraus.
     SwTxtNode           * pNumRuleNodeFromDoc; // Moving indent of numrule #i23726#
diff --git a/main/sw/source/ui/index/cnttab.cxx b/main/sw/source/ui/index/cnttab.cxx
index 121153d..4d8cc0b 100644
--- a/main/sw/source/ui/index/cnttab.cxx
+++ b/main/sw/source/ui/index/cnttab.cxx
@@ -1860,7 +1860,6 @@
 			bNextControl = sal_False;
 			bCall = sal_True;
 		}
-//IAccessibility2 Impplementaton 2009-----
 		else if ( (aCode.GetCode() == KEY_F3) && aCode.IsShift() && !aCode.IsMod1() && !aCode.IsMod2() )
 		{
 			if ( m_pParent )
@@ -1868,7 +1867,6 @@
 				m_pParent->SetFocus2theAllBtn();
 			}
 		}
-//-----IAccessibility2 Impplementaton 2009
 		if(bCall && aPrevNextControlLink.IsSet())
 			aPrevNextControlLink.Call(this);
 
@@ -2004,7 +2002,6 @@
 		//this is invalid here
 		return;
 	}
-//IAccessibility2 Impplementaton 2009-----
 	else if ( (aCode.GetCode() == KEY_F3) && aCode.IsShift() && !aCode.IsMod1() && !aCode.IsMod2() )
 	{
 		if ( m_pParent )
@@ -2012,7 +2009,6 @@
 			m_pParent->SetFocus2theAllBtn();
 		}
 	}
-//-----IAccessibility2 Impplementaton 2009
 	if(bCall && aPrevNextControlLink.IsSet())
 			aPrevNextControlLink.Call(this);
 	else
@@ -2661,7 +2657,6 @@
 	sal_uInt16 nPos = aAuthFieldsLB.InsertEntry(sTemp);
 	aAuthFieldsLB.SetEntryData(nPos, (void*)(nData));
 }
-//IAccessibility2 Impplementaton 2009-----
 void SwTOXEntryTabPage::SetFocus2theAllBtn()
 {
 	aAllLevelsPB.GrabFocus();
@@ -2684,7 +2679,6 @@
 
 	return SfxTabPage::Notify( rNEvt );
 }
-//-----IAccessibility2 Impplementaton 2009
 /*-- 16.06.99 10:47:35---------------------------------------------------
 
 This function inizializes the default value in the Token
@@ -3178,12 +3172,10 @@
 			nHelpId = STR_TOKEN_HELP_ENTRY;
 		aButtonHelpTexts[i] = String(ResId(nHelpId, *rResId.GetResMgr()));
 	}
-//IAccessibility2 Impplementaton 2009-----
 	accessibleName = String(SW_RES(STR_STRUCTURE));
 	sAdditionalAccnameString1 = String(SW_RES(STR_ADDITIONAL_ACCNAME_STRING1));
 	sAdditionalAccnameString2 = String(SW_RES(STR_ADDITIONAL_ACCNAME_STRING2));
 	sAdditionalAccnameString3 = String(SW_RES(STR_ADDITIONAL_ACCNAME_STRING3));
-//-----IAccessibility2 Impplementaton 2009
 	FreeResource();
 
 	Link aLink(LINK(this, SwTokenWindow, ScrollHdl));
@@ -3341,7 +3333,6 @@
 		pEdit->SetPosPixel(aControlPos);
 		aControlList.Insert(pEdit, aControlList.Count());
 		pEdit->SetText(rText);
-//IAccessibility2 Impplementaton 2009-----
 		sal_uInt32 nIndex = GetControlIndex( TOKEN_TEXT, pEdit );
 		String s1 = String::CreateFromAscii(" (");
 		String s2 = String::CreateFromAscii(")");
@@ -3366,7 +3357,6 @@
 		{
 			pEdit->SetAccessibleName(strName);
 		}
-//-----IAccessibility2 Impplementaton 2009
 	 	Size aEditSize(aControlSize);
 		aEditSize.Width() = pEdit->GetTextWidth(rText) + EDIT_MINWIDTH;
 		pEdit->SetSizePixel(aEditSize);
@@ -3397,7 +3387,6 @@
 						(ToxAuthorityField)rToken.nAuthorityField));
 			pButton->SetText(sTmp.Copy(0, 2));
 		}
-//IAccessibility2 Impplementaton 2009-----
 		String sSpace = String::CreateFromAscii(" ");
 		sal_uInt32 nIndex = GetControlIndex( rToken.eTokenType, pButton );
 		String sAccName = aButtonHelpTexts[rToken.eTokenType];
@@ -3407,7 +3396,6 @@
 			sAccName += String::CreateFromInt32(nIndex);
 		}
 		pButton->SetAccessibleName( sAccName );
-//-----IAccessibility2 Impplementaton 2009
 		pButton->Show();
 		pRet = pButton;
 	}
@@ -3549,7 +3537,6 @@
 		SwTOXEdit* pEdit = new SwTOXEdit(&aCtrlParentWin, this, aTmpToken);
 		aControlList.Insert(pEdit, nActivePos + 1);
 		pEdit->SetText(sRight);
-//IAccessibility2 Impplementaton 2009-----
 		sal_uInt32 nIndex = GetControlIndex( TOKEN_TEXT, pEdit );
 		String s1 = String::CreateFromAscii(" (");
 		String s2 = String::CreateFromAscii(")");
@@ -3574,7 +3561,6 @@
 		{
 			pEdit->SetAccessibleName(strName);
 		}
-//-----IAccessibility2 Impplementaton 2009
 		pEdit->SetSizePixel(aControlSize);
 		pEdit->AdjustSize();
 		pEdit->SetModifyHdl(LINK(this, SwTokenWindow, EditResize ));
@@ -3604,7 +3590,6 @@
 		pButton->SetText(sTmp.Copy(0, 2));
 	}
 
-//IAccessibility2 Impplementaton 2009-----
 	String sSpace = String::CreateFromAscii(" ");
 	sal_uInt32 nIndex = GetControlIndex( rToken.eTokenType, pButton );
 	String sAccName = aButtonHelpTexts[rToken.eTokenType];
@@ -3614,7 +3599,6 @@
 		sAccName += String::CreateFromInt32(nIndex);
 	}
 	pButton->SetAccessibleName( sAccName );
-//-----IAccessibility2 Impplementaton 2009
  Size aEditSize(GetOutputSizePixel());
 	aEditSize.Width() = pButton->GetTextWidth(rText) + 5;
 	pButton->SetSizePixel(aEditSize);
@@ -4045,7 +4029,6 @@
        }
     }
 }
-//IAccessibility2 Impplementaton 2009-----
 void SwTokenWindow::SetFocus2theAllBtn()
 {
 	if (m_pParent)
@@ -4053,7 +4036,7 @@
 		m_pParent->SetFocus2theAllBtn();
 	}
 }
-sal_uInt32 SwTokenWindow::GetControlIndex(FormTokenType eType, const Control* pCurControl) const
+sal_uInt32 SwTokenWindow::GetControlIndex(FormTokenType eType, const Control* /* pCurControl */) const
 {
 	//there are only one entry-text button and only one page-number button,
 	//so we need not add index for these two buttons.
@@ -4079,7 +4062,6 @@
 	
 	return nIndex;
 }
-//-----IAccessibility2 Impplementaton 2009
 /* -----------------25.03.99 15:17-------------------
  *
  * --------------------------------------------------*/
diff --git a/main/sw/source/ui/index/cnttab.hrc b/main/sw/source/ui/index/cnttab.hrc
index 99feab7..e84349c 100644
--- a/main/sw/source/ui/index/cnttab.hrc
+++ b/main/sw/source/ui/index/cnttab.hrc
@@ -169,12 +169,10 @@
 #define STR_TOKEN_HELP_AUTHORITY     (STR_BUTTON_HELP_TEXT_START + 9)
 
 #define STR_CHARSTYLE				(STR_TOKEN_HELP_AUTHORITY + 1)
-//IAccessibility2 Impplementaton 2009-----
 #define STR_STRUCTURE	(STR_TOKEN_HELP_AUTHORITY + 2)
 #define STR_ADDITIONAL_ACCNAME_STRING1 (STR_TOKEN_HELP_AUTHORITY + 3)
 #define STR_ADDITIONAL_ACCNAME_STRING2 (STR_TOKEN_HELP_AUTHORITY + 4)
 #define STR_ADDITIONAL_ACCNAME_STRING3 (STR_TOKEN_HELP_AUTHORITY + 5)
-//-----IAccessibility2 Impplementaton 2009
 #define TLB_STYLES				100
 #define FL_STYLES                   101
 #define PB_OK		            102
diff --git a/main/sw/source/ui/index/cnttab.src b/main/sw/source/ui/index/cnttab.src
index 2568979..c744047 100644
--- a/main/sw/source/ui/index/cnttab.src
+++ b/main/sw/source/ui/index/cnttab.src
@@ -674,7 +674,6 @@
 		{
 			Text [ en-US ] = "Character Style: ";
 		};
-//IAccessibility2 Impplementaton 2009-----
 		String STR_STRUCTURE
 		{
 			Text [ en-US ] = "Structure text";
@@ -691,7 +690,6 @@
 		{
 			Text [ en-US ] = "Press Ctrl+Alt+B to move focus back to the current structure control";
 		};
-//-----IAccessibility2 Impplementaton 2009
 	};
 	PushButton PB_ALL_LEVELS
 	{
@@ -1232,9 +1230,7 @@
 			};
             MaskColor = IMAGE_MASK_COLOR ;
         };
-        //IAccessibility2 Implementation 2009-----
         QuickHelpText [ en-US ] = "Left" ;
-        //-----IAccessibility2 Implementation 2009
 	};
     ImageButton PB_RIGHT
 	{
@@ -1250,9 +1246,7 @@
 			};
             MaskColor = IMAGE_MASK_COLOR ;
 		};
-		//IAccessibility2 Implementation 2009-----
 		QuickHelpText [ en-US ] = "Right" ;
-		//-----IAccessibility2 Implementation 2009
 	};
     FixedLine FL_STYLES
 	{
diff --git a/main/sw/source/ui/misc/glossary.hrc b/main/sw/source/ui/misc/glossary.hrc
index 9db5a93..19ff785 100644
--- a/main/sw/source/ui/misc/glossary.hrc
+++ b/main/sw/source/ui/misc/glossary.hrc
@@ -84,6 +84,4 @@
 #define   FL_NN              9
 #define   BT_CANCEL			10
 #define   BT_OKNEW			11
-//IAccessibility2 Implementation 2009-----
 #define STR_SW_CATEGORY 12
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/misc/glossary.src b/main/sw/source/ui/misc/glossary.src
index 034ec34..37bf836 100644
--- a/main/sw/source/ui/misc/glossary.src
+++ b/main/sw/source/ui/misc/glossary.src
@@ -286,12 +286,10 @@
 {
     Text [ en-US ] = "AutoText :" ;
 };
-/*IAccessibility2 Implementation 2009-----*/
 String STR_ACCESS_SW_CATEGORY
 {
     Text [ en-US ] = "Category" ;
 };
-/*-----IAccessibility2 Implementation 2009*/
 ModalDialog DLG_RENAME_GLOS
 {
 	OutputSize = TRUE ;
diff --git a/main/sw/source/ui/misc/insfnote.hrc b/main/sw/source/ui/misc/insfnote.hrc
index ef9d5f7..6c75e89 100644
--- a/main/sw/source/ui/misc/insfnote.hrc
+++ b/main/sw/source/ui/misc/insfnote.hrc
@@ -36,6 +36,4 @@
 #define BT_PREV				103
 #define BT_NEXT				104
 
-//IAccessibility2 Implementation 2009-----
 #define STR_CHAR			105
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/misc/insfnote.src b/main/sw/source/ui/misc/insfnote.src
index 5431085..1ab3c12 100644
--- a/main/sw/source/ui/misc/insfnote.src
+++ b/main/sw/source/ui/misc/insfnote.src
@@ -45,12 +45,10 @@
 		Group = TRUE ;
 		Left = TRUE ;
 	};
-	//IAccessibility2 Implementation 2009-----
 	String STR_CHAR
 	{
 		Text [ en-US ] = "Character" ;
 	};
-	//-----IAccessibility2 Implementation 2009
 	OKButton BT_OK
 	{
         Pos = MAP_APPFONT ( 104 , 6 ) ;
diff --git a/main/sw/source/ui/ribbar/inputwin.cxx b/main/sw/source/ui/ribbar/inputwin.cxx
index d9f6eec..f747792 100644
--- a/main/sw/source/ui/ribbar/inputwin.cxx
+++ b/main/sw/source/ui/ribbar/inputwin.cxx
@@ -91,7 +91,6 @@
 	pWrtShell = pView ? pView->GetWrtShellPtr() : 0;
 
 	InsertWindow( ED_POS, &aPos, 0, 0);
-	//IAccessibility2 Implementation 2009-----
 	SetItemText(ED_POS, String(SW_RES(STR_ACCESS_FORMULA_TYPE)));
 	aPos.SetAccessibleName(String(SW_RES(STR_ACCESS_FORMULA_TYPE)));
 	SetAccessibleName(String(SW_RES(STR_ACCESS_FORMULA_TOOLBAR)));
@@ -100,7 +99,6 @@
 	InsertWindow( ED_FORMULA, &aEdit);
 	SetItemText(ED_FORMULA, String(SW_RES(STR_ACCESS_FORMULA_TEXT)));
 	aEdit.SetAccessibleName(String(SW_RES(STR_ACCESS_FORMULA_TEXT)));
-	//-----IAccessibility2 Implementation 2009
 	SetHelpId(ED_FORMULA, HID_EDIT_FORMULA);
 
     sal_Bool bHC = GetSettings().GetStyleSettings().GetHighContrastMode();
diff --git a/main/sw/source/ui/ribbar/inputwin.hrc b/main/sw/source/ui/ribbar/inputwin.hrc
index 80bc005..6a5f715 100644
--- a/main/sw/source/ui/ribbar/inputwin.hrc
+++ b/main/sw/source/ui/ribbar/inputwin.hrc
@@ -60,11 +60,9 @@
 #define ED_POS				2
 #define ED_FORMULA 			3
 
-//IAccessibility2 Impplementaton 2009-----
 #define STR_ED_POS			1
 #define STR_ED_FORMULA		2
 #define STR_TOOLBAR_FORMULA	35
-//-----IAccessibility2 Impplementaton 2009
 #endif
 
 
diff --git a/main/sw/source/ui/ribbar/inputwin.src b/main/sw/source/ui/ribbar/inputwin.src
index 536bbe4..1138719 100644
--- a/main/sw/source/ui/ribbar/inputwin.src
+++ b/main/sw/source/ui/ribbar/inputwin.src
@@ -281,7 +281,6 @@
 {
 	Text [ en-US ] = "Text formula" ;
 };
-//IAccessibility2 Impplementaton 2009-----
 String STR_ACCESS_FORMULA_TOOLBAR
 {
 	Text [ en-US ] = "Formula Tool Bar" ;
@@ -294,7 +293,6 @@
 {
 	Text [ en-US ] = "Formula Text" ;
 };
-//-----IAccessibility2 Impplementaton 2009
 #define TB_INPUT  \
     ToolBoxItem\
     {\
diff --git a/main/sw/source/ui/ribbar/workctrl.cxx b/main/sw/source/ui/ribbar/workctrl.cxx
index cdd23d9..7226568 100644
--- a/main/sw/source/ui/ribbar/workctrl.cxx
+++ b/main/sw/source/ui/ribbar/workctrl.cxx
@@ -503,7 +503,6 @@
             sText = String(SW_RES(nResStr));
             nTbxBits = TIB_CHECKABLE;
         }
-		//IAccessibility2 Impplementaton 2009-----
 		else
 		{
 			if (nNaviId == NID_PREV)
@@ -511,7 +510,6 @@
 			else if (nNaviId == NID_NEXT)
 				sText = String(SW_RES(STR_IMGBTN_PGE_DOWN));
 		}
-		//-----IAccessibility2 Impplementaton 2009
         aToolBox.InsertItem(nNaviId, sText, nTbxBits);
         aToolBox.SetHelpId( nNaviId, aNavigationHelpIds[i] );
     }
diff --git a/main/sw/source/ui/shells/textsh1.cxx b/main/sw/source/ui/shells/textsh1.cxx
index 14a0bb7..f0794c6 100644
--- a/main/sw/source/ui/shells/textsh1.cxx
+++ b/main/sw/source/ui/shells/textsh1.cxx
@@ -1119,7 +1119,6 @@
 
 		case SID_DEC_INDENT:
 		case SID_INC_INDENT:
-//IAccessibility2 Implementation 2009-----
 			//According to the requirement, modified the behavior when user
 			//using the indent button on the toolbar. Now if we increase/decrease indent for a
 			//paragraph which has bullet style it will increase/decrease the bullet level.
@@ -1147,7 +1146,6 @@
 			}
 			//rWrtSh.MoveLeftMargin( SID_INC_INDENT == nSlot,
 			//						rReq.GetModifier() != KEY_MOD1 );
-//-----IAccessibility2 Implementation 2009
 			rReq.Done();
 			break;
 		case FN_DEC_INDENT_OFFSET:
@@ -1558,7 +1556,6 @@
 		case SID_DEC_INDENT:
 		case SID_INC_INDENT:
 			{
-//IAccessibility2 Implementation 2009-----
 				//if the paragrah has bullet we'll do the following things:
 				//1: if the bullet level is the first level, disable the decrease-indent button
 				//2: if the bullet level is the last level, disable the increase-indent button
@@ -1587,7 +1584,6 @@
 				//	SID_INC_INDENT == nWhich, TRUE ))
 				//	rSet.DisableItem( nWhich );
 				//old code ends
-//-----IAccessibility2 Implementation 2009
 			}
 			break;
 
diff --git a/main/sw/source/ui/table/convert.hrc b/main/sw/source/ui/table/convert.hrc
index 267f2fd..547b8a1 100644
--- a/main/sw/source/ui/table/convert.hrc
+++ b/main/sw/source/ui/table/convert.hrc
@@ -47,6 +47,4 @@
 #define BT_AUTOFORMAT	102
 #define BT_HELP 		103
 #define WIN_REPEAT_HEADER   104
-//IAccessibility2 Implementation 2009-----
 #define	STR_SYMBOL		105
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/table/convert.src b/main/sw/source/ui/table/convert.src
index 6b7716c..947a038 100644
--- a/main/sw/source/ui/table/convert.src
+++ b/main/sw/source/ui/table/convert.src
@@ -187,12 +187,10 @@
 		Hide = TRUE ;
 		Text [ en-US ] = "Auto~Format..." ;
 	};
-	/*IAccessibility2 Implementation 2009-----*/
 	String STR_SYMBOL
 	{
 		Text [ en-US ] = "Symbol" ;
 	};
-	/*-----IAccessibility2 Implementation 2009*/
 };
 
 
diff --git a/main/sw/source/ui/table/tabledlg.cxx b/main/sw/source/ui/table/tabledlg.cxx
index dcbf023..4f7a805 100644
--- a/main/sw/source/ui/table/tabledlg.cxx
+++ b/main/sw/source/ui/table/tabledlg.cxx
@@ -990,11 +990,9 @@
 		String sIndex = String::CreateFromInt32( aValueTbl[i] + 1 );
 		sEntry += sIndex;
 		pTextArr[i]->SetText( sEntry );
-//IAccessibility2 Impplementaton 2009-----
 		String sColumnWidth = SW_RESSTR( STR_ACCESS_COLUMN_WIDTH);
 		sColumnWidth.SearchAndReplace( DEFINE_CONST_UNICODE("%1"), sIndex );
 		pFieldArr[i]->SetAccessibleName( sColumnWidth );
-//-----IAccessibility2 Impplementaton 2009
 	}
 
 	aDownBtn.Enable(aValueTbl[0] > 0);
diff --git a/main/sw/source/ui/table/tabledlg.hrc b/main/sw/source/ui/table/tabledlg.hrc
index acb2bbc..cd446c7 100644
--- a/main/sw/source/ui/table/tabledlg.hrc
+++ b/main/sw/source/ui/table/tabledlg.hrc
@@ -102,9 +102,7 @@
 #define FL_VERT_ORIENT          140
 #define RB_FROM_LEFT		144
 
-//IAccessibility2 Impplementaton 2009-----
 #define STR_COLUMN_WIDTH	145
-//-----IAccessibility2 Impplementaton 2009
 #define FT_VERTORIENT       150
 #define LB_VERTORIENT       151
 
diff --git a/main/sw/source/ui/uiview/pview.cxx b/main/sw/source/ui/uiview/pview.cxx
index 5837986..d0e7529 100644
--- a/main/sw/source/ui/uiview/pview.cxx
+++ b/main/sw/source/ui/uiview/pview.cxx
@@ -240,11 +240,9 @@
 
 SwPagePreViewWin::~SwPagePreViewWin()
 {
-	//IAccessibility2 Implementation 2009-----
 	// Remove to the deconstruction of SwPagePreView.
 	//if( mpViewShell)
 	//	delete mpViewShell;
-	//-----IAccessibility2 Implementation 2009
 }
 
 /*--------------------------------------------------------------------
@@ -1297,8 +1295,8 @@
 
 SwPagePreView::SwPagePreView(SfxViewFrame *pViewFrame, SfxViewShell* pOldSh):
 	SfxViewShell( pViewFrame, SWVIEWFLAGS ),
-	pViewWin( new SwPagePreViewWin(&(GetViewFrame())->GetWindow(), *this ) ),//IAccessibility2 Implementation 2009
-    nNewPage(USHRT_MAX),
+	pViewWin( new SwPagePreViewWin(&(GetViewFrame())->GetWindow(), *this ) ),
+	nNewPage(USHRT_MAX),
 	pHScrollbar(0),
 	pVScrollbar(0),
 	pPageUpBtn(0),
@@ -1381,7 +1379,6 @@
  SwPagePreView::~SwPagePreView()
 {
 	SetWindow( 0 );
-	//IAccessibility2 Implementation 2009-----
 	ViewShell* pVShell =  pViewWin->GetViewShell();
 	pVShell->SetWin(0);
 	//pViewWin->Hide();
@@ -1389,7 +1386,6 @@
 		delete pVShell;
 	delete pViewWin;
 	//pViewWin->Hide();
-	//-----IAccessibility2 Implementation 2009
 
 	delete pScrollFill;
 	delete pHScrollbar;
@@ -2106,7 +2102,6 @@
 	//IAccessibility2 Implementation 2009-----, only the Preference shouldn't control the Zoom, it is better to detect AT tools running. So the bridge can be used here
         //if(!Application::GetSettings().GetMiscSettings().GetEnableATToolSupport())
 	if ( !Application::IsAccessibilityEnabled() )
-	//-----IAccessibility2 Implementation 2009
         {
             sal_uInt16 nFactor = GetViewShell()->GetViewOptions()->GetZoom();
             const sal_uInt16 nOffset = 10;
@@ -2139,7 +2134,6 @@
 														// happend already!!!
 
     DBG_ASSERT( GetViewShell() != NULL, "We need a view shell" );
-	//IAccessibility2 Implementation 2009-----
 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc = GetAccessible( sal_False );
 	if (xAcc.is())
 	{
@@ -2151,9 +2145,7 @@
 		SetAccessible(xAccPreview);
 	}
 	return GetAccessible( sal_False );
-	//-----IAccessibility2 Implementation 2009
 }
-//IAccessibility2 Implementation 2009-----
 // MT: Removed Windows::SwitchView() introduced with IA2 CWS.
 // There are other notifications for this when the active view has chnaged, so please update the code to use that event mechanism
 void SwPagePreViewWin::SwitchView()
@@ -2169,7 +2161,6 @@
 	}
 #endif
 }
-//-----IAccessibility2 Implementation 2009
 
 /* -----------------------------06.05.2002 13:18------------------------------
 
diff --git a/main/sw/source/ui/uiview/view.cxx b/main/sw/source/ui/uiview/view.cxx
index 5628669..6884505 100644
--- a/main/sw/source/ui/uiview/view.cxx
+++ b/main/sw/source/ui/uiview/view.cxx
@@ -727,6 +727,7 @@
 	: SfxViewShell( _pFrame, SWVIEWFLAGS ),
 	aPageStr( SW_RES( STR_PAGE )),
     nNewPage(USHRT_MAX),
+	nOldPageNum(0),
     pNumRuleNodeFromDoc(0), // #i23726#
 	pEditWin( new SwEditWin( &_pFrame->GetWindow(), *this ) ),
 	pWrtShell(0),
@@ -763,9 +764,6 @@
 	nFormSfxId( USHRT_MAX ),
     nLastPasteDestination( 0xFFFF ),
     nLeftBorderDistance( 0 ),
-    //IAccessibility2 Implementation 2009-----
-	nOldPageNum(0),
-    //-----IAccessibility2 Implementation 2009
     nRightBorderDistance( 0 ),
     bInMailMerge(sal_False),
     bInDtor(sal_False),
diff --git a/main/sw/source/ui/uiview/view2.cxx b/main/sw/source/ui/uiview/view2.cxx
index 924675b..d808290 100644
--- a/main/sw/source/ui/uiview/view2.cxx
+++ b/main/sw/source/ui/uiview/view2.cxx
@@ -1179,7 +1179,6 @@
 	SfxWhichIter aIter( rSet );
 	sal_uInt16 nWhich = aIter.FirstWhich();
 	ASSERT( nWhich, "leeres Set");
-	//IAccessibility2 Implementation 2009-----
 	if (Application::IsAccessibilityEnabled())
 	{
 		//get section chang event
@@ -1204,7 +1203,6 @@
 			rShell.FireColumnChangeEvent(2, 1);
 		}
 	}
-	//-----IAccessibility2 Implementation 2009
 
 	while( nWhich )
 	{
@@ -1229,7 +1227,6 @@
 				rShell.GetPageNumber( -1, rShell.IsCrsrVisible(), nPage, nLogPage, sDisplay );
 				rSet.Put( SfxStringItem( FN_STAT_PAGE,
 							GetPageStr( nPage, nLogPage, sDisplay) ));
-				//IAccessibility2 Implementation 2009-----
 				//if existing page number is not equal to old page number, send out this event.
 				if (nOldPageNum != nLogPage )
 				{
@@ -1237,7 +1234,6 @@
 						rShell.FirePageChangeEvent(nOldPageNum, nLogPage);
 					nOldPageNum = nLogPage;
 				}
-				//-----IAccessibility2 Implementation 2009
 				sal_uInt16 nCnt = GetWrtShell().GetPageCnt();
 				if (nPageCnt != nCnt)	// Basic benachrichtigen
 				{
diff --git a/main/sw/source/ui/uiview/viewsrch.cxx b/main/sw/source/ui/uiview/viewsrch.cxx
index b1c9935..33b568d 100644
--- a/main/sw/source/ui/uiview/viewsrch.cxx
+++ b/main/sw/source/ui/uiview/viewsrch.cxx
@@ -213,7 +213,6 @@
 				if( bRet )
 					Scroll(pWrtShell->GetCharRect().SVRect());
 				rReq.SetReturnValue(SfxBoolItem(nSlot, bRet));
-				//IAccessibility2 Implementation 2009-----
 				if ( Application::IsAccessibilityEnabled() )
 				{
 					const sal_uInt16 nId = SvxSearchDialogWrapper::GetChildWindowId();
@@ -225,7 +224,6 @@
 						pSrchDlg->SetSrchFlag();
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
 			}
 			break;
 			case SVX_SEARCHCMD_FIND_ALL:
@@ -241,7 +239,6 @@
 					bFound = sal_False;
 				}
 				rReq.SetReturnValue(SfxBoolItem(nSlot, bRet));
-				//IAccessibility2 Implementation 2009-----
 				if ( Application::IsAccessibilityEnabled() )
 				{
 					const sal_uInt16 nId = SvxSearchDialogWrapper::GetChildWindowId();
@@ -254,7 +251,6 @@
 						pSrchDlg->SetSrchFlag();				
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
 			}
 			break;
 			case SVX_SEARCHCMD_REPLACE:
@@ -306,7 +302,6 @@
 					pSrchItem->SetCommand( nOldCmd );
 					rReq.SetReturnValue(SfxBoolItem(nSlot, bRet));
 				}
-				//IAccessibility2 Implementation 2009-----
 				{					
 					const sal_uInt16 nId = SvxSearchDialogWrapper::GetChildWindowId();
 					SvxSearchDialogWrapper *pWrp = (SvxSearchDialogWrapper*)GetViewFrame()->GetChildWindow(nId);
@@ -318,7 +313,6 @@
 						pSrchDlg->SetSrchFlag();			
 					}
 				}
-				//-----IAccessibility2 Implementation 2009
 				break;
 
 			case SVX_SEARCHCMD_REPLACE_ALL:
@@ -368,7 +362,6 @@
 						InfoBox( pParentWindow, aText ).Execute();
 					}
 				}
-				//IAccessibility2 Implementation 2009-----
 				const sal_uInt16 nId = SvxSearchDialogWrapper::GetChildWindowId();
 				SvxSearchDialogWrapper *pWrp = (SvxSearchDialogWrapper*)GetViewFrame()->GetChildWindow(nId);
 			
@@ -378,7 +371,6 @@
 					pSrchDlg->SetDocWin( (Window*)pEditWin );
 					pSrchDlg->SetSrchFlag();				
 				}
-				//-----IAccessibility2 Implementation 2009
 				break;
 			}
 
diff --git a/main/sw/source/ui/utlui/content.cxx b/main/sw/source/ui/utlui/content.cxx
index 4fea35a..08f9a11 100644
--- a/main/sw/source/ui/utlui/content.cxx
+++ b/main/sw/source/ui/utlui/content.cxx
@@ -85,14 +85,12 @@
 #include <numrule.hxx>
 #include <swundo.hxx>
 #include <ndtxt.hxx>
-//IAccessibility2 Implementation 2009-----
 //#include <ndgrf.hxx>
 #include <fmtcntnt.hxx>
 #include <PostItMgr.hxx>
 //#include <../../core/inc/flyfrm.hxx>
 //#include <../../core/inc/cntfrm.hxx>
 //#include <ndnotxt.hxx>
-//-----IAccessibility2 Implementation 2009
 //#include <postit.hxx>
 #include <postithelper.hxx>
 #include <redline.hxx>
@@ -899,7 +897,7 @@
 		bIsOutlineMoveable(sal_True),
 		bViewHasChanged(sal_False),
 		bIsImageListInitialized(sal_False),
-		bIsKeySpace(sal_False) //IAccessibility2 Implementation 2009
+		bIsKeySpace(sal_False)
 {
 	sal_uInt16 i;
 
@@ -936,7 +934,6 @@
 	bIsInDrag = sal_False;
 }
 
-//IAccessibility2 Implementation 2009-----
 String SwContentTree::GetEntryAltText( SvLBoxEntry* pEntry ) const
 {
 	if( pEntry == NULL)
@@ -1108,7 +1105,6 @@
 	return String();
 }
 
-//-----IAccessibility2 Implementation 2009
 /***************************************************************************
 	Drag&Drop methods
 ***************************************************************************/
@@ -1394,7 +1390,6 @@
 						sEntry = sSpace;
 					SvLBoxEntry* pChild = InsertEntry(sEntry, pParent,
 							sal_False, LIST_APPEND, (void*)pCnt);
-					//IAccessibility2 Implementation 2009-----
 					//Solution: If object is marked , the corresponding entry is set true ,
 					//else the corresponding entry is set false .
 					//==================================================
@@ -1416,7 +1411,6 @@
 
 						}
 					}
-					//-----IAccessibility2 Implementation 2009
 				}
 			}
 		}
@@ -1426,7 +1420,6 @@
 	Beschreibung:	Expand - Zustand fuer Inhaltstypen merken
 ***************************************************************************/
 
-//IAccessibility2 Implementation 2009-----
 //Solution: Get drawing Objects by content .
 SdrObject* SwContentTree::GetDrawingObjectsByContent(const SwContent *pCnt)
 {
@@ -1460,7 +1453,6 @@
 	}
 	return pRetObj;
 }
-//-----IAccessibility2 Implementation 2009
 
 sal_Bool  SwContentTree::Expand( SvLBoxEntry* pParent )
 {
@@ -2460,7 +2452,6 @@
 		{
 			FindActiveTypeAndRemoveUserData();
 			Display(sal_True);
-			//IAccessibility2 Implementation 2009-----
 			//Solution: Set focus
 			if( bIsKeySpace )
 			{
@@ -2468,7 +2459,6 @@
 				ShowFocus( oldRectangle);
 				bIsKeySpace = sal_False;
 			}
-			//-----IAccessibility2 Implementation 2009
 		}
 	}
 	else if(!pView && bIsActive && !bIsIdleClear)
@@ -2691,7 +2681,6 @@
             GrabFocus();
         }
 	}
-	//IAccessibility2 Implementation 2009-----
 	//Solution: Make KEY_SPACE has same function as DoubleClick ,
 	//and realize multi-selection .
 	else if(aCode.GetCode() == KEY_SPACE && 0 == aCode.GetModifier())
@@ -2714,7 +2703,6 @@
 
 				SwContent* pCnt = (SwContent*)pEntry->GetUserData();
 
-				sal_Bool bSel = sal_False;
 				sal_uInt16 nJumpType = pCnt->GetParent()->GetType();
 				switch(nJumpType)
 				{
@@ -2775,7 +2763,6 @@
 										break;
 									default:
 										nCmpId = pTemp->GetObjIdentifier();
-										//IAccessibility2 Implementation 2009-----
 										if ( bMark )
 										{
 											SdrPageView* pPV = pDrawView->GetSdrPageView/*GetPageViewPvNum*/(/*0*/);
@@ -2784,7 +2771,6 @@
 												pDrawView->MarkObj(pTemp, pPV, sal_True);
 											}
 										}
-										//-----IAccessibility2 Implementation 2009
 								}
 								//mod end							
 							}
@@ -2812,7 +2798,6 @@
 		}		
 
 	}	
-	//-----IAccessibility2 Implementation 2009
 	else
 		SvTreeListBox::KeyInput(rEvent);
 
@@ -3575,7 +3560,6 @@
 		rDev.DrawText( rPos, GetText() );
 		rDev.SetFont( aOldFont );
 	}
-	//IAccessibility2 Implementation 2009-----
 	// IA2 CWS. MT: Removed for now (also in SvLBoxEntry) - only used in Sw/Sd/ScContentLBoxString, they should decide if they need this
 	/*
 	else if (pEntry->IsMarked())
@@ -3593,7 +3577,6 @@
 			rDev.DrawText( rPosStar, str);
 			rDev.SetFont( aOldFont );
 	}
-	//-----IAccessibility2 Implementation 2009
 	*/
 	else 
 		SvLBoxString::Paint( rPos, rDev, nFlags, pEntry);
@@ -3615,7 +3598,6 @@
 }
 
 
-//IAccessibility2 Implementation 2009-----
 sal_Int32  SwContentTree::GetEntryRealChildsNum( SvLBoxEntry* pParent ) const
 {
 	// ist es ein Inhaltstyp?
@@ -3629,4 +3611,3 @@
 	}
 	return 0;
 }
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/utlui/navipi.hrc b/main/sw/source/ui/utlui/navipi.hrc
index f2dd9a9..08709cd 100644
--- a/main/sw/source/ui/utlui/navipi.hrc
+++ b/main/sw/source/ui/utlui/navipi.hrc
@@ -85,7 +85,5 @@
 #define ST_POSTIT_HIDE				(ST_GLOBAL_CONTEXT_FIRST +36)
 #define ST_POSTIT_DELETE			(ST_GLOBAL_CONTEXT_FIRST +37)
 
-//IAccessibility2 Implementation 2009-----
 #define ST_TL_GLOBAL			ST_GLOBAL_CONTEXT_FIRST +38
 #define ST_TL_CONTENT			ST_GLOBAL_CONTEXT_FIRST +39
-//-----IAccessibility2 Implementation 2009
diff --git a/main/sw/source/ui/utlui/navipi.src b/main/sw/source/ui/utlui/navipi.src
index 4640afb..61eb47e 100644
--- a/main/sw/source/ui/utlui/navipi.src
+++ b/main/sw/source/ui/utlui/navipi.src
@@ -532,7 +532,6 @@
     NAVI_ENTRY_IDS
 };
 
-//IAccessibility2 Implementation 2009-----
 String STR_ACCESS_TL_GLOBAL
 {
 	Text [ en-US ] = "Global View";
@@ -541,5 +540,4 @@
 {
 	Text [ en-US ] = "Content View";
 };
-//-----IAccessibility2 Implementation 2009
 
diff --git a/main/sw/source/ui/utlui/poolfmt.src b/main/sw/source/ui/utlui/poolfmt.src
index 7f1d6fe..94b5589 100644
--- a/main/sw/source/ui/utlui/poolfmt.src
+++ b/main/sw/source/ui/utlui/poolfmt.src
@@ -734,7 +734,6 @@
 {
 	Text [ en-US ] = "Rubies";
 };
-//IAccessibility2 Implementation 2009-----
 String STR_COLUMN_VALUESET_ITEM0
 {	
 	Text [ en-US ] = "1 column";
@@ -755,7 +754,6 @@
 {	
 	Text [ en-US ] = "2 columns with different size (left < right)";
 };
-//-----IAccessibility2 Implementation 2009
 String STR_POOLCHR_VERT_NUM
 {
 	Text [ en-US ] = "Vertical Numbering Symbols";
diff --git a/main/sw/source/ui/wrtsh/select.cxx b/main/sw/source/ui/wrtsh/select.cxx
index 43333c9..9dbfd74 100644
--- a/main/sw/source/ui/wrtsh/select.cxx
+++ b/main/sw/source/ui/wrtsh/select.cxx
@@ -46,11 +46,9 @@
 #include <swdtflvr.hxx>
 #include <crsskip.hxx>
 
-//IAccessibility2 Implementation 2009-----
 #ifndef _DOC_HXX
 #include <doc.hxx>
 #endif
-//-----IAccessibility2 Implementation 2009
 #if OSL_DEBUG_LEVEL > 1
 #include <pam.hxx>
 #endif
@@ -172,13 +170,11 @@
         SttSelect();
         GoEnd(sal_True, &bMoveTable);
 
-		//IAccessibility2 Implementation 2009-----
 		SwDoc *pDoc = GetDoc();
 		if ( pDoc )
 		{
 			pDoc->SetPrepareSelAll();
 		}
-		//-----IAccessibility2 Implementation 2009
         if( pStartPos )
         {
             pTmpCrsr = getShellCrsr( false );
diff --git a/main/sw/source/ui/wrtsh/wrtsh1.cxx b/main/sw/source/ui/wrtsh/wrtsh1.cxx
index cb8129c..f20fa6b 100644
--- a/main/sw/source/ui/wrtsh/wrtsh1.cxx
+++ b/main/sw/source/ui/wrtsh/wrtsh1.cxx
@@ -426,7 +426,7 @@
                     aCmd += pSlot->GetUnoName();
                     SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create();
                     SfxAbstractInsertObjectDialog* pDlg =
-                            pFact->CreateInsertObjectDialog( GetWin(), rtl::OUString( aCmd, aCmd.getLength(), RTL_TEXTENCODING_UTF8 ), xStor, &aServerList );
+                            pFact->CreateInsertObjectDialog( GetWin(), rtl::OStringToOUString( aCmd, RTL_TEXTENCODING_UTF8 ), xStor, &aServerList );
                     if ( pDlg )
                     {
                         pDlg->Execute();
diff --git a/main/testtools/source/bridgetest/multi.cxx b/main/testtools/source/bridgetest/multi.cxx
index 57680ce..67e7eb9 100644
--- a/main/testtools/source/bridgetest/multi.cxx
+++ b/main/testtools/source/bridgetest/multi.cxx
@@ -34,6 +34,8 @@
 
 #include <sstream>
 
+inline std::ostream& operator<<( std::ostream& s, const rtl::OUString r) { return (s << r.getStr()); }
+
 namespace css = com::sun::star;
 
 namespace {
diff --git a/main/toolkit/inc/toolkit/awt/vclxwindows.hxx b/main/toolkit/inc/toolkit/awt/vclxwindows.hxx
index da10876..df0bbb3 100644
--- a/main/toolkit/inc/toolkit/awt/vclxwindows.hxx
+++ b/main/toolkit/inc/toolkit/awt/vclxwindows.hxx
@@ -876,10 +876,8 @@
 class TOOLKIT_DLLPUBLIC VCLXDateField :	public ::com::sun::star::awt::XDateField,
 						public VCLXFormattedSpinField
 {
-//IAccessibility2 Impplementaton 2009-----
 protected:
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > CreateAccessibleContext();
-//-----IAccessibility2 Impplementaton 2009
 public:
 					VCLXDateField();
 					~VCLXDateField();
@@ -926,10 +924,8 @@
 class VCLXTimeField :	public ::com::sun::star::awt::XTimeField,
 						public VCLXFormattedSpinField
 {
-//IAccessibility2 Impplementaton 2009-----
 protected:
 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > CreateAccessibleContext();
-//-----IAccessibility2 Impplementaton 2009
 public:
 					VCLXTimeField();
 					~VCLXTimeField();
diff --git a/main/toolkit/source/awt/vclxaccessiblecomponent.cxx b/main/toolkit/source/awt/vclxaccessiblecomponent.cxx
index 3c92c83..abffa5b 100644
--- a/main/toolkit/source/awt/vclxaccessiblecomponent.cxx
+++ b/main/toolkit/source/awt/vclxaccessiblecomponent.cxx
@@ -37,10 +37,8 @@
 #include <toolkit/awt/vclxfont.hxx>
 #include <vcl/dialog.hxx>
 #include <vcl/window.hxx>
-//IAccessibility2 Implementation 2009-----
 //Solution:Need methods in Edit.
 #include <vcl/edit.hxx>
-//-----IAccessibility2 Implementation 2009
 #include <tools/debug.hxx>
 #include <unotools/accessiblestatesethelper.hxx>
 #include <unotools/accessiblerelationsethelper.hxx>
@@ -445,9 +443,7 @@
 	Window* pWindow = GetWindow();
 	if ( pWindow )
 	{
-//IAccessibility2 Implementation 2009-----
 		Window *pLabeledBy = pWindow->GetAccessibleRelationLabeledBy();
-//-----IAccessibility2 Implementation 2009
 		if ( pLabeledBy && pLabeledBy != pWindow )
 		{
 			uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
@@ -462,7 +458,6 @@
 			aSequence[0] = pLabelFor->GetAccessible();
 			rRelationSet.AddRelation( accessibility::AccessibleRelation( accessibility::AccessibleRelationType::LABEL_FOR, aSequence ) );
 		}
-//IAccessibility2 Implementation 2009-----
 		Window* pMemberOf = pWindow->GetAccessibleRelationMemberOf();	
 		if ( pMemberOf && pMemberOf != pWindow )
 		{
@@ -475,7 +470,6 @@
 		{
 			rRelationSet.AddRelation( accessibility::AccessibleRelation( accessibility::AccessibleRelationType::CONTENT_FLOWS_TO, aFlowToSequence ) );		
 		}
-//-----IAccessibility2 Implementation 2009
 	}
 }
 
@@ -524,19 +518,16 @@
 
 		if ( pWindow->GetStyle() & WB_SIZEABLE )
 			rStateSet.AddState( accessibility::AccessibleStateType::RESIZABLE );
-//IAccessibility2 Implementation 2009-----
 		// 6. frame doesn't have MOVABLE state
 		// 10. for password text, where is the sensitive state? 
 		if( ( getAccessibleRole() == accessibility::AccessibleRole::FRAME ||getAccessibleRole() == accessibility::AccessibleRole::DIALOG )&& pWindow->GetStyle() & WB_MOVEABLE )
 			rStateSet.AddState( accessibility::AccessibleStateType::MOVEABLE );
-//-----IAccessibility2 Implementation 2009
         if( pWindow->IsDialog() )
         {
             Dialog *pDlg = static_cast< Dialog* >( pWindow );
             if( pDlg->IsInExecute() )
 			    rStateSet.AddState( accessibility::AccessibleStateType::MODAL );
         }
-//IAccessibility2 Implementation 2009-----
         //Solution:If a combobox or list's edit child isn't read-only,EDITABLE state
         //         should be set.
 		if( pWindow && pWindow->GetType() == WINDOW_COMBOBOX )
@@ -567,7 +558,6 @@
 			}
 			pChild = pChild->GetWindow( WINDOW_NEXT );
 		}
-//-----IAccessibility2 Implementation 2009
 	}
 	else
 	{
@@ -903,11 +893,9 @@
 			else
 				aFont = pWindow->GetFont();
 			nColor = aFont.GetColor().GetColor();
-//IAccessibility2 Implementation 2009-----
 // COL_AUTO is not very meaningful for AT
 			if ( nColor == (sal_Int32)COL_AUTO)
 				nColor = pWindow->GetTextColor().GetColor();
-//-----IAccessibility2 Implementation 2009
 		}
 	}
 
diff --git a/main/toolkit/source/awt/vclxtoolkit.cxx b/main/toolkit/source/awt/vclxtoolkit.cxx
index b597553..b1e440a 100644
--- a/main/toolkit/source/awt/vclxtoolkit.cxx
+++ b/main/toolkit/source/awt/vclxtoolkit.cxx
@@ -632,11 +632,9 @@
 
 ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > VCLXToolkit::createWindow( const ::com::sun::star::awt::WindowDescriptor& rDescriptor ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
 {
-//IAccessibility2 Implementation 2009-----
 #ifdef WNT
 	CEnableAccessInterface e;
 #endif
-//-----IAccessibility2 Implementation 2009
     return ImplCreateWindow( rDescriptor, WinBits(0) );
 }
 
diff --git a/main/toolkit/source/awt/vclxwindows.cxx b/main/toolkit/source/awt/vclxwindows.cxx
index 4ff01f3..c76994d 100644
--- a/main/toolkit/source/awt/vclxwindows.cxx
+++ b/main/toolkit/source/awt/vclxwindows.cxx
@@ -4505,7 +4505,6 @@
 {
 }
 
-//IAccessibility2 Implementation 2009-----
 //change the window type here to match the role
 ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > VCLXDateField::CreateAccessibleContext()
 {
@@ -4516,7 +4515,6 @@
 	}
 	return getAccessibleFactory().createAccessibleContext( this );
 }
-//-----IAccessibility2 Implementation 2009
 
 // ::com::sun::star::uno::XInterface
 ::com::sun::star::uno::Any VCLXDateField::queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException)
@@ -4859,7 +4857,6 @@
 VCLXTimeField::~VCLXTimeField()
 {
 }
-//IAccessibility2 Implementation 2009-----
 //change the window type here to match the role
 ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > VCLXTimeField::CreateAccessibleContext()
 {
@@ -4870,7 +4867,6 @@
 	}
 	return getAccessibleFactory().createAccessibleContext( this );
 }
-//-----IAccessibility2 Implementation 2009
 
 // ::com::sun::star::uno::XInterface
 ::com::sun::star::uno::Any VCLXTimeField::queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException)
diff --git a/main/toolkit/source/helper/property.cxx b/main/toolkit/source/helper/property.cxx
index aad57de..451d0de 100644
--- a/main/toolkit/source/helper/property.cxx
+++ b/main/toolkit/source/helper/property.cxx
@@ -78,9 +78,9 @@
    		bDependsOnOthers = sal_False;
 	 }
 
-	ImplPropertyInfo( const sal_Unicode* pName, sal_uInt16 nId, const ::com::sun::star::uno::Type& rType,
+	ImplPropertyInfo( const rtl::OUString& rName, sal_uInt16 nId, const ::com::sun::star::uno::Type& rType,
 						sal_Int16 nAttrs, sal_Bool bDepends = sal_False )
-	 : aName( pName )
+	 : aName( rName )
 	 {
 	 	nPropId = nId;
 		aType = rType;
diff --git a/main/toolkit/source/layout/vcl/wrapper.cxx b/main/toolkit/source/layout/vcl/wrapper.cxx
index 4882746..610e088 100644
--- a/main/toolkit/source/layout/vcl/wrapper.cxx
+++ b/main/toolkit/source/layout/vcl/wrapper.cxx
@@ -152,7 +152,7 @@
     if ( nId != 0 )
     {
         rtl::OString aStr = rtl::OString::valueOf( (sal_Int32) nId );
-        xHandle = GetPeerHandle( aStr, 0 );
+        xHandle = GetPeerHandle( aStr.getStr(), 0 );
     }
     return xHandle;
 }
@@ -955,7 +955,7 @@
         else
             noButton.Hide ();
     }
-    if (help_id)
+    if( !help_id.isEmpty())
         SetHelpId (help_id);
     else
         helpButton.Hide ();
diff --git a/main/tools/inc/tools/debug.hxx b/main/tools/inc/tools/debug.hxx
index bbdbbf7..355b084 100644
--- a/main/tools/inc/tools/debug.hxx
+++ b/main/tools/inc/tools/debug.hxx
@@ -345,23 +345,11 @@
 TOOLS_DLLPUBLIC void DbgOutf( const sal_Char* pFStr, ... );
 TOOLS_DLLPUBLIC void ImpDbgOutfBuf( sal_Char* pBuf, const sal_Char* pFStr, ... );
 
-inline void DbgTrace( const sal_Char* pMsg,
-                      const sal_Char* pFile = NULL, sal_uInt16 nLine = 0 )
-{
-    DbgOut( pMsg, DBG_OUT_TRACE, pFile, nLine );
-}
+#define DbgTrace( msg) do{ DbgOut( msg, DBG_OUT_TRACE, __FILE__, __LINE__ ); } while(0)
 
-inline void DbgWarning( const sal_Char* pMsg,
-                        const sal_Char* pFile = NULL, sal_uInt16 nLine = 0 )
-{
-    DbgOut( pMsg, DBG_OUT_WARNING, pFile, nLine );
-}
+#define DbgWarning( msg) do{ DbgOut( msg, DBG_OUT_WARNING, __FILE__, __LINE__ ); } while(0)
 
-inline void DbgError( const sal_Char* pMsg,
-                      const sal_Char* pFile = NULL, sal_uInt16 nLine = 0 )
-{
-    DbgOut( pMsg, DBG_OUT_ERROR, pFile, nLine );
-}
+#define DbgError( msg) do{ DbgOut( msg, DBG_OUT_ERROR, __FILE__, __LINE__ ); } while(0)
 
 // --- Dbg-Test-Functions ---
 
@@ -473,8 +461,7 @@
     {                                               \
         if ( !( sCon ) )                            \
         {                                           \
-            DbgWarning( aWarning, __FILE__,         \
-                        __LINE__ );                 \
+            DbgWarning( aWarning);                  \
         }                                           \
     }                                               \
 } while(0)
@@ -486,8 +473,7 @@
     {                                               \
         if ( !( sCon ) )                            \
         {                                           \
-            DbgError( aError,                       \
-                      __FILE__, __LINE__ );         \
+            DbgError( aError);                      \
         }                                           \
     }                                               \
 } while(0)
@@ -498,8 +484,7 @@
 {                                               \
     if ( !( sCon ) )                            \
     {                                           \
-        DbgError( aError,                       \
-                  __FILE__, __LINE__ );         \
+        DbgError( aError);                      \
     }                                           \
 } while(0)
 #else
@@ -561,7 +546,7 @@
 do                                                  \
 {                                                   \
     if ( DbgIsTraceOut() )                          \
-        DbgTrace( aTrace, __FILE__, __LINE__ );     \
+        DbgTrace( aTrace );                         \
 } while(0)
 
 #define DBG_WARNING( aWarning )                     \
@@ -619,7 +604,7 @@
 do                                                  \
 {                                                   \
     if ( DbgIsWarningOut() )                        \
-        DbgWarning( aWarning, __FILE__, __LINE__ ); \
+        DbgWarning( aWarning );                     \
 } while(0)
 
 #define DBG_ERROR( aError )                         \
@@ -677,7 +662,7 @@
 do                                                  \
 {                                                   \
     if ( DbgIsErrorOut() )                          \
-        DbgError( aError, __FILE__, __LINE__ );     \
+        DbgError( aError );                         \
 } while(0)
 
 #define DBG_TESTSOLARMUTEX()                \
diff --git a/main/tools/source/fsys/tempfile.cxx b/main/tools/source/fsys/tempfile.cxx
index 8420f5e..49b7466 100644
--- a/main/tools/source/fsys/tempfile.cxx
+++ b/main/tools/source/fsys/tempfile.cxx
@@ -80,7 +80,7 @@
             if ( aRet[i-1] == '/' )
                 i--;
 
-            if ( DirectoryItem::get( ::rtl::OUString( aRet, i ), aItem ) == FileBase::E_None )
+            if ( DirectoryItem::get( ::rtl::OUString( aRet.getStr(), i ), aItem ) == FileBase::E_None )
                 aName = aRet;
         }
     }
diff --git a/main/tools/source/generic/color.cxx b/main/tools/source/generic/color.cxx
index 6b103ef..1cd3a1f 100644
--- a/main/tools/source/generic/color.cxx
+++ b/main/tools/source/generic/color.cxx
@@ -143,14 +143,14 @@
 
 sal_Bool Color::IsDark() const
 {
-    return GetLuminance() <= 38; 
+    return GetLuminance() <= 55;
 }
 
 // -----------------------------------------------------------------------
 
 sal_Bool Color::IsBright() const
 {
-    return GetLuminance() >= 245; 
+    return GetLuminance() >= 245;
 }
 
 // -----------------------------------------------------------------------
@@ -259,53 +259,53 @@
 
 // -----------------------------------------------------------------------
 
-// CMYK values from 0 to 1

-ColorData Color::CMYKtoRGB( double fCyan, double fMagenta, double fYellow, double fKey )

-{

-    fCyan = (fCyan * ( 1.0 - fKey )) + fKey;

-    fMagenta = (fMagenta * ( 1.0 - fKey )) + fKey;

-    fYellow = (fYellow * ( 1.0 - fKey )) + fKey;

-

-    sal_uInt8 nRed = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fCyan ) * 255.0, 255.0), 0.0 ) );

-    sal_uInt8 nGreen = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fMagenta ) * 255.0, 255.0), 0.0 ) );

-    sal_uInt8 nBlue = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fYellow ) * 255.0, 255.0), 0.0 ) );

-

-    return RGB_COLORDATA( nRed, nGreen, nBlue );

-}

-

-// -----------------------------------------------------------------------

-

-// RGB values from 0 to 255

-// CMY results from 0 to 1

-void Color::RGBtoCMYK( double& fCyan, double& fMagenta, double& fYellow, double& fKey )

-{

-    fCyan = 1 - ( GetRed() / 255.0 );

-    fMagenta = 1 - ( GetGreen() / 255.0 );

-    fYellow = 1 - ( GetBlue() / 255.0 );

-

-    //CMYK and CMY values from 0 to 1

-    fKey = 1.0;

-    if( fCyan < fKey ) fKey = fCyan;

-    if( fMagenta < fKey ) fKey = fMagenta;

-    if( fYellow < fKey ) fKey = fYellow;

-

-    if ( fKey == 1.0 )

-    {

-       //Black

-       fCyan = 0.0;

-       fMagenta = 0.0;

-       fYellow = 0.0;

-    }

-    else

-    {

-       fCyan = ( fCyan - fKey ) / ( 1.0 - fKey );

-       fMagenta = ( fMagenta - fKey ) / ( 1.0 - fKey );

-       fYellow = ( fYellow - fKey ) / ( 1.0 - fKey );

-    }

-}

-

-// -----------------------------------------------------------------------

-

+// CMYK values from 0 to 1
+ColorData Color::CMYKtoRGB( double fCyan, double fMagenta, double fYellow, double fKey )
+{
+    fCyan = (fCyan * ( 1.0 - fKey )) + fKey;
+    fMagenta = (fMagenta * ( 1.0 - fKey )) + fKey;
+    fYellow = (fYellow * ( 1.0 - fKey )) + fKey;
+
+    sal_uInt8 nRed = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fCyan ) * 255.0, 255.0), 0.0 ) );
+    sal_uInt8 nGreen = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fMagenta ) * 255.0, 255.0), 0.0 ) );
+    sal_uInt8 nBlue = static_cast< sal_uInt8 >( std::max( std::min( ( 1.0 - fYellow ) * 255.0, 255.0), 0.0 ) );
+
+    return RGB_COLORDATA( nRed, nGreen, nBlue );
+}
+
+// -----------------------------------------------------------------------
+
+// RGB values from 0 to 255
+// CMY results from 0 to 1
+void Color::RGBtoCMYK( double& fCyan, double& fMagenta, double& fYellow, double& fKey )
+{
+    fCyan = 1 - ( GetRed() / 255.0 );
+    fMagenta = 1 - ( GetGreen() / 255.0 );
+    fYellow = 1 - ( GetBlue() / 255.0 );
+
+    //CMYK and CMY values from 0 to 1
+    fKey = 1.0;
+    if( fCyan < fKey ) fKey = fCyan;
+    if( fMagenta < fKey ) fKey = fMagenta;
+    if( fYellow < fKey ) fKey = fYellow;
+
+    if ( fKey == 1.0 )
+    {
+       //Black
+       fCyan = 0.0;
+       fMagenta = 0.0;
+       fYellow = 0.0;
+    }
+    else
+    {
+       fCyan = ( fCyan - fKey ) / ( 1.0 - fKey );
+       fMagenta = ( fMagenta - fKey ) / ( 1.0 - fKey );
+       fYellow = ( fYellow - fKey ) / ( 1.0 - fKey );
+    }
+}
+
+// -----------------------------------------------------------------------
+
 SvStream& Color::Read( SvStream& rIStm, sal_Bool bNewFormat )
 {
 	if ( bNewFormat )
diff --git a/main/ucb/source/ucp/gvfs/gvfs_content.cxx b/main/ucb/source/ucp/gvfs/gvfs_content.cxx
index 877107f..a15b1c8 100644
--- a/main/ucb/source/ucp/gvfs/gvfs_content.cxx
+++ b/main/ucb/source/ucp/gvfs/gvfs_content.cxx
@@ -98,7 +98,7 @@
 OUStringToGnome( const rtl::OUString &str )
 {
     rtl::OString aTempStr = rtl::OUStringToOString( str, RTL_TEXTENCODING_UTF8 );
-    return g_strdup( (const sal_Char *) aTempStr );
+    return g_strdup( aTempStr.getStr() );
 }
 
 static rtl::OUString
@@ -403,7 +403,7 @@
         aCommand.Argument >>= bDeletePhysical;
 
         ::rtl::OString aURI = getOURI();
-        GnomeVFSResult result = gnome_vfs_unlink ((const sal_Char *) aURI);
+        GnomeVFSResult result = gnome_vfs_unlink( aURI.getStr());
 
         if (result != GNOME_VFS_OK)
             cancelCommandExecution( result, xEnv, sal_True );
@@ -554,8 +554,7 @@
 
 #ifdef DEBUG
     g_warning ("getParentURL '%s' -> '%s'",
-           getURI(), (const sal_Char *) rtl::OUStringToOString
-               ( aParentURL, RTL_TEXTENCODING_UTF8 ) );
+           getURI(), rtl::OUStringToOString( aParentURL, RTL_TEXTENCODING_UTF8).getStr() );
 #endif
 
     return aParentURL;
@@ -633,8 +632,7 @@
             GnomeVFSFileInfo* fileInfo = gnome_vfs_file_info_new ();
 
             ::rtl::OString aURI = getOURI();
-            gnome_vfs_get_file_info
-                ( (const sal_Char *)aURI, fileInfo,
+            gnome_vfs_get_file_info( aURI.getStr(), fileInfo,
                         GNOME_VFS_FILE_INFO_GET_ACCESS_RIGHTS );
 
             if (fileInfo->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_ACCESS) {
@@ -735,7 +733,7 @@
     // The simple approach:
     if( setMask != GNOME_VFS_SET_FILE_INFO_NONE )
         result = gnome_vfs_set_file_info // missed a const in the API there
-            ( (const sal_Char *) aURI, (GnomeVFSFileInfo *)newInfo, setMask );
+            ( aURI.getStr(), (GnomeVFSFileInfo *)newInfo, setMask );
 
     if ( result == GNOME_VFS_ERROR_NOT_SUPPORTED &&
          ( setMask & GNOME_VFS_SET_FILE_INFO_NAME ) ) {
@@ -746,7 +744,7 @@
 
         char *newURI = OUStringToGnome( makeNewURL( newInfo->name ) );
 
-        result = gnome_vfs_move ((const sal_Char *)aURI, newURI, FALSE);
+        result = gnome_vfs_move( aURI.getStr(), newURI, FALSE);
 
         g_free (newURI);
     }
@@ -958,7 +956,7 @@
 #ifdef DEBUG
         g_warning ("Make directory");
 #endif
-        result = gnome_vfs_make_directory( (const sal_Char *) aURI, perm );
+        result = gnome_vfs_make_directory( aURI.getStr(), perm );
 
         if( result != GNOME_VFS_OK )
             cancelCommandExecution( result, xEnv, sal_True );
@@ -982,7 +980,7 @@
     result = GNOME_VFS_OK;
     if ( bReplaceExisting ) {
         Authentication aAuth( xEnv );
-        result = gnome_vfs_open( &handle, (const sal_Char *)aURI,
+        result = gnome_vfs_open( &handle, aURI.getStr(),
                      GNOME_VFS_OPEN_WRITE );
     }
 
@@ -994,7 +992,7 @@
              ( GNOME_VFS_PERM_GROUP_WRITE | GNOME_VFS_PERM_GROUP_READ ) );
 
         result = gnome_vfs_create
-            ( &handle, (const sal_Char *)aURI, GNOME_VFS_OPEN_WRITE, TRUE, perm );
+            ( &handle, aURI.getStr(), GNOME_VFS_OPEN_WRITE, TRUE, perm );
     }
 
     if( result != GNOME_VFS_OK )
@@ -1134,7 +1132,7 @@
         ::rtl::OString aURI = getOURI();
         Authentication aAuth( xEnv );
         result = gnome_vfs_get_file_info
-            ( (const sal_Char *)aURI, &m_info, GNOME_VFS_FILE_INFO_DEFAULT );
+            ( aURI.getStr(), &m_info, GNOME_VFS_FILE_INFO_DEFAULT );
         if (result != GNOME_VFS_OK)
             gnome_vfs_file_info_clear( &m_info );
     } else
@@ -1453,8 +1451,7 @@
     if ( !xTempOut.is() )
         cancelCommandExecution( GNOME_VFS_ERROR_IO, xEnv );
 
-    result = gnome_vfs_open
-        ( &handle, (const sal_Char *)aURI, GNOME_VFS_OPEN_READ );
+    result = gnome_vfs_open( &handle, aURI.getStr(), GNOME_VFS_OPEN_READ );
     if (result != GNOME_VFS_OK)
         cancelCommandExecution( result, xEnv );
 
@@ -1482,8 +1479,7 @@
     if ( !(m_info.valid_fields & GNOME_VFS_FILE_INFO_FIELDS_SIZE) )
         return createTempStream( xEnv );
 
-    result = gnome_vfs_open
-        ( &handle, (const sal_Char *)aURI,
+    result = gnome_vfs_open( &handle, aURI.getStr(),
           (GnomeVFSOpenMode) (GNOME_VFS_OPEN_READ | GNOME_VFS_OPEN_RANDOM ) );
 
     if (result == GNOME_VFS_ERROR_INVALID_OPEN_MODE ||
diff --git a/main/ucb/source/ucp/gvfs/gvfs_provider.cxx b/main/ucb/source/ucp/gvfs/gvfs_provider.cxx
index 6c49a6a..52f85e1 100644
--- a/main/ucb/source/ucp/gvfs/gvfs_provider.cxx
+++ b/main/ucb/source/ucp/gvfs/gvfs_provider.cxx
@@ -108,8 +108,7 @@
 {
 #ifdef DEBUG
     g_warning ("QueryContent: '%s'",
-               (const sal_Char *)rtl::OUStringToOString
-               (Identifier->getContentIdentifier(), RTL_TEXTENCODING_UTF8));
+               rtl::OUStringToOString( Identifier->getContentIdentifier(), RTL_TEXTENCODING_UTF8).getStr());
 #endif
 
     osl::MutexGuard aGuard( m_aMutex );
diff --git a/main/ucb/source/ucp/webdav/DAVProperties.cxx b/main/ucb/source/ucp/webdav/DAVProperties.cxx
index 560f9da..aa01c5c 100644
--- a/main/ucb/source/ucp/webdav/DAVProperties.cxx
+++ b/main/ucb/source/ucp/webdav/DAVProperties.cxx
@@ -66,7 +66,7 @@
         rName.name
             = strdup( rtl::OUStringToOString(
                         rFullName.copy( RTL_CONSTASCII_LENGTH( "DAV:" ) ),
-                                        RTL_TEXTENCODING_UTF8 ) );
+                                        RTL_TEXTENCODING_UTF8 ).getStr() );
     }
     else if ( rFullName.compareToAscii( RTL_CONSTASCII_STRINGPARAM(
                 "http://apache.org/dav/props/" ) ) == 0 )
@@ -77,7 +77,7 @@
                         rFullName.copy(
                             RTL_CONSTASCII_LENGTH(
                                 "http://apache.org/dav/props/" ) ),
-                            RTL_TEXTENCODING_UTF8 ) );
+                            RTL_TEXTENCODING_UTF8 ).getStr() );
     }
     else if ( rFullName.compareToAscii( RTL_CONSTASCII_STRINGPARAM(
                 "http://ucb.openoffice.org/dav/props/" ) ) == 0 )
@@ -88,7 +88,7 @@
                         rFullName.copy(
                             RTL_CONSTASCII_LENGTH(
                                 "http://ucb.openoffice.org/dav/props/" ) ),
-                            RTL_TEXTENCODING_UTF8 ) );
+                            RTL_TEXTENCODING_UTF8 ).getStr() );
     }
     else if ( rFullName.compareToAscii( RTL_CONSTASCII_STRINGPARAM(
                 "<prop:" ) ) == 0 )
@@ -102,11 +102,11 @@
 
         sal_Int32 nStart = RTL_CONSTASCII_LENGTH( "<prop:" );
         sal_Int32 nLen = aFullName.indexOf( ' ' ) - nStart;
-        rName.name = strdup( aFullName.copy( nStart, nLen ) );
+        rName.name = strdup( aFullName.copy( nStart, nLen ).getStr() );
 
         nStart = aFullName.indexOf( '=', nStart + nLen ) + 2; // after ="
         nLen = aFullName.getLength() - RTL_CONSTASCII_LENGTH( "\">" ) - nStart;
-        rName.nspace = strdup( aFullName.copy( nStart, nLen ) );
+        rName.nspace = strdup( aFullName.copy( nStart, nLen ).getStr() );
     }
     else
     {
@@ -114,7 +114,7 @@
         rName.nspace = "http://ucb.openoffice.org/dav/props/";
         rName.name
             = strdup( rtl::OUStringToOString( rFullName,
-                                              RTL_TEXTENCODING_UTF8 ) );
+                                              RTL_TEXTENCODING_UTF8 ).getStr() );
     }
 }
 
diff --git a/main/ucb/source/ucp/webdav/SerfRequestProcessor.cxx b/main/ucb/source/ucp/webdav/SerfRequestProcessor.cxx
index 9582502..ee46a81 100644
--- a/main/ucb/source/ucp/webdav/SerfRequestProcessor.cxx
+++ b/main/ucb/source/ucp/webdav/SerfRequestProcessor.cxx
@@ -55,7 +55,7 @@
     , mbHandleSerfResponseCalled( false )
 {
     mPathStr = apr_pstrdup( mrSerfSession.getAprPool(), 
-                            rtl::OUStringToOString( inPath, RTL_TEXTENCODING_UTF8 ) );
+                            rtl::OUStringToOString( inPath, RTL_TEXTENCODING_UTF8 ).getStr() );
 }
 
 SerfRequestProcessor::~SerfRequestProcessor()
@@ -214,9 +214,9 @@
                                         apr_status_t& outSerfStatus )
 {
     mContentType = apr_pstrdup( mrSerfSession.getAprPool(), 
-                                rtl::OUStringToOString( inContentType, RTL_TEXTENCODING_UTF8 ) );
+                                rtl::OUStringToOString( inContentType, RTL_TEXTENCODING_UTF8 ).getStr() );
     mReferer = apr_pstrdup( mrSerfSession.getAprPool(), 
-                                rtl::OUStringToOString( inReferer, RTL_TEXTENCODING_UTF8 ) );
+                                rtl::OUStringToOString( inReferer, RTL_TEXTENCODING_UTF8 ).getStr() );
     mpProcImpl = createPostReqProcImpl( mPathStr,
                                         mrSerfSession.getRequestEnvironment().m_aRequestHeaders,
                                         inData,
@@ -238,9 +238,9 @@
                                         apr_status_t& outSerfStatus )
 {
     mContentType = apr_pstrdup( mrSerfSession.getAprPool(), 
-                                rtl::OUStringToOString( inContentType, RTL_TEXTENCODING_UTF8 ) );
+                                rtl::OUStringToOString( inContentType, RTL_TEXTENCODING_UTF8 ).getStr() );
     mReferer = apr_pstrdup( mrSerfSession.getAprPool(), 
-                            rtl::OUStringToOString( inReferer, RTL_TEXTENCODING_UTF8 ) );
+                            rtl::OUStringToOString( inReferer, RTL_TEXTENCODING_UTF8 ).getStr() );
     mpProcImpl = createPostReqProcImpl( mPathStr,
                                         mrSerfSession.getRequestEnvironment().m_aRequestHeaders,
                                         inData,
@@ -279,7 +279,7 @@
                                         apr_status_t& outSerfStatus )
 {
     mDestPathStr = apr_pstrdup( mrSerfSession.getAprPool(), 
-                                rtl::OUStringToOString( inDestinationPath, RTL_TEXTENCODING_UTF8 ) );
+                                rtl::OUStringToOString( inDestinationPath, RTL_TEXTENCODING_UTF8 ).getStr() );
     mpProcImpl = createCopyReqProcImpl( mPathStr,
                                         mrSerfSession.getRequestEnvironment().m_aRequestHeaders,
                                         mDestPathStr,
@@ -295,7 +295,7 @@
                                         apr_status_t& outSerfStatus )
 {
     mDestPathStr = apr_pstrdup( mrSerfSession.getAprPool(), 
-                                rtl::OUStringToOString( inDestinationPath, RTL_TEXTENCODING_UTF8 ) );
+                                rtl::OUStringToOString( inDestinationPath, RTL_TEXTENCODING_UTF8 ).getStr() );
     mpProcImpl = createMoveReqProcImpl( mPathStr,
                                         mrSerfSession.getRequestEnvironment().m_aRequestHeaders,
                                         mDestPathStr,
diff --git a/main/ucb/source/ucp/webdav/SerfSession.cxx b/main/ucb/source/ucp/webdav/SerfSession.cxx
index 7c3c359..937526a 100644
--- a/main/ucb/source/ucp/webdav/SerfSession.cxx
+++ b/main/ucb/source/ucp/webdav/SerfSession.cxx
@@ -163,7 +163,7 @@
         {
             apr_sockaddr_t *proxy_address = NULL;
             status = apr_sockaddr_info_get( &proxy_address, 
-                                                               rtl::OUStringToOString( m_aProxyName, RTL_TEXTENCODING_UTF8 ), 
+                                                               rtl::OUStringToOString( m_aProxyName, RTL_TEXTENCODING_UTF8 ).getStr(), 
                                                                APR_UNSPEC,
                                                                static_cast<apr_port_t>(m_nProxyPort), 
                                                                0, getAprPool() );
@@ -339,8 +339,8 @@
 
     if ( theRetVal == 0 )
     {
-        *outUsername = apr_pstrdup( inAprPool, rtl::OUStringToOString( theUserName, RTL_TEXTENCODING_UTF8 ) );
-        *outPassword = apr_pstrdup( inAprPool, rtl::OUStringToOString( thePassWord, RTL_TEXTENCODING_UTF8 ) );
+        *outUsername = apr_pstrdup( inAprPool, rtl::OUStringToOString( theUserName, RTL_TEXTENCODING_UTF8 ).getStr() );
+        *outPassword = apr_pstrdup( inAprPool, rtl::OUStringToOString( thePassWord, RTL_TEXTENCODING_UTF8 ).getStr() );
     }
 
     return theRetVal != 0 ? SERF_ERROR_AUTHN_FAILED : APR_SUCCESS;
diff --git a/main/unodevtools/source/skeletonmaker/skeletoncommon.hxx b/main/unodevtools/source/skeletonmaker/skeletoncommon.hxx
index 8228ee5..635164d 100644
--- a/main/unodevtools/source/skeletonmaker/skeletoncommon.hxx
+++ b/main/unodevtools/source/skeletonmaker/skeletoncommon.hxx
@@ -32,6 +32,8 @@
 #include <hash_set>
 #include <map>
 
+inline std::ostream& operator<<( std::ostream& s, const rtl::OString r) { return (s << r.getStr()); }
+
 namespace skeletonmaker {
 
 typedef ::std::map< ::rtl::OString, ::std::vector< ::rtl::OString >,
diff --git a/main/unotools/source/config/cmdoptions.cxx b/main/unotools/source/config/cmdoptions.cxx
index 9531952..d0b7a32 100644
--- a/main/unotools/source/config/cmdoptions.cxx
+++ b/main/unotools/source/config/cmdoptions.cxx
@@ -102,7 +102,7 @@
 
         void SetContainerSize( sal_Int32 nSize )
 		{
-			m_aCommandHashMap.resize( nSize );
+			m_aCommandHashMap.rehash( nSize );
 		}
 
 		sal_Bool Lookup( const OUString& aCmd ) const
diff --git a/main/unotools/source/ucbhelper/tempfile.cxx b/main/unotools/source/ucbhelper/tempfile.cxx
index 7bd32d9..918037a 100644
--- a/main/unotools/source/ucbhelper/tempfile.cxx
+++ b/main/unotools/source/ucbhelper/tempfile.cxx
@@ -156,7 +156,7 @@
                 if ( aRet[i-1] == '/' )
                     i--;
 
-                if ( DirectoryItem::get( ::rtl::OUString( aRet, i ), aItem ) == FileBase::E_None )
+                if ( DirectoryItem::get( ::rtl::OUString( aRet.getStr(), i ), aItem ) == FileBase::E_None )
                     aName = aRet;
             }
         }
diff --git a/main/unoxml/source/dom/characterdata.cxx b/main/unoxml/source/dom/characterdata.cxx
index 4ffab1a..4f4f0a2 100644
--- a/main/unoxml/source/dom/characterdata.cxx
+++ b/main/unoxml/source/dom/characterdata.cxx
@@ -89,7 +89,7 @@
             ::boost::shared_ptr<xmlChar const> const pContent(
                 xmlNodeGetContent(m_aNodePtr), xmlFree);
             OString aData(reinterpret_cast<sal_Char const*>(pContent.get()));
-            OUString tmp(aData, aData.getLength(), RTL_TEXTENCODING_UTF8);
+            OUString tmp( aData.getStr(), aData.getLength(), RTL_TEXTENCODING_UTF8);
             if (offset > tmp.getLength() || offset < 0 || count < 0) {
                 DOMException e;
                 e.Code = DOMExceptionType_INDEX_SIZE_ERR;
@@ -160,7 +160,7 @@
             ::boost::shared_ptr<xmlChar const> const pContent(
                 xmlNodeGetContent(m_aNodePtr), xmlFree);
             OString aData(reinterpret_cast<sal_Char const*>(pContent.get()));
-            OUString tmp(aData, aData.getLength(), RTL_TEXTENCODING_UTF8);
+            OUString tmp( aData.getStr(), aData.getLength(), RTL_TEXTENCODING_UTF8);
             if (offset > tmp.getLength() || offset < 0) {
                 DOMException e;
                 e.Code = DOMExceptionType_INDEX_SIZE_ERR;
@@ -195,7 +195,7 @@
             ::boost::shared_ptr<xmlChar const> const pContent(
                 xmlNodeGetContent(m_aNodePtr), xmlFree);
             OString aData(reinterpret_cast<sal_Char const*>(pContent.get()));
-            OUString tmp(aData, aData.getLength(), RTL_TEXTENCODING_UTF8);
+            OUString tmp( aData.getStr(), aData.getLength(), RTL_TEXTENCODING_UTF8);
             if (offset > tmp.getLength() || offset < 0 || count < 0){
                 DOMException e;
                 e.Code = DOMExceptionType_INDEX_SIZE_ERR;
@@ -250,7 +250,7 @@
             ::boost::shared_ptr<xmlChar const> const pContent(
                 xmlNodeGetContent(m_aNodePtr), xmlFree);
             OString aData(reinterpret_cast<sal_Char const*>(pContent.get()));
-            OUString tmp(aData, aData.getLength(), RTL_TEXTENCODING_UTF8);
+            OUString tmp( aData.getStr(), aData.getLength(), RTL_TEXTENCODING_UTF8);
             if (offset > tmp.getLength() || offset < 0 || count < 0) {
                 DOMException e;
                 e.Code = DOMExceptionType_INDEX_SIZE_ERR;
diff --git a/main/vcl/inc/ilstbox.hxx b/main/vcl/inc/ilstbox.hxx
index c7859d2..60fcd28 100644
--- a/main/vcl/inc/ilstbox.hxx
+++ b/main/vcl/inc/ilstbox.hxx
@@ -250,10 +250,8 @@
 	Link			maDoubleClickHdl;
 	Link			maUserDrawHdl;
 	Link			maMRUChangedHdl;
-//IAccessibility2 Implementation 2009-----
 	Link			maFocusHdl;
 	Link			maListItemSelectHdl;
-//-----IAccessibility2 Implementation 2009
 
     ::vcl::QuickSelectionEngine maQuickSelectionEngine;
 
@@ -267,10 +265,8 @@
 	virtual void	GetFocus();
 	virtual void	LoseFocus();
 
-	//IAccessibility2 Implementation 2009-----
 	//sal_Bool			SelectEntries( sal_uInt16 nSelect, LB_EVENT_TYPE eLET, sal_Bool bShift = sal_False, sal_Bool bCtrl = sal_False );
 	sal_Bool			SelectEntries( sal_uInt16 nSelect, LB_EVENT_TYPE eLET, sal_Bool bShift = sal_False, sal_Bool bCtrl = sal_False, sal_Bool bSelectPosChange = sal_False );
-	//-----IAccessibility2 Implementation 2009
 	void			ImplPaint( sal_uInt16 nPos, sal_Bool bErase = sal_False, bool bLayout = false );
     void			ImplDoPaint( const Rectangle& rRect, bool bLayout = false );
 	void			ImplCalcMetrics();
@@ -367,13 +363,11 @@
 	const Link& 	GetUserDrawHdl() const				{ return maUserDrawHdl; }
 	void			SetMRUChangedHdl( const Link& rLink )	{ maMRUChangedHdl = rLink; }
 	const Link& 	GetMRUChangedHdl() const				{ return maMRUChangedHdl; }
-//IAccessibility2 Implementation 2009-----
 	void			SetFocusHdl( const Link& rLink )	{ maFocusHdl = rLink ; }
 	const Link& 	GetFocusHdl() const				{ return maFocusHdl; }
 
 	void			SetListItemSelectHdl( const Link& rLink )	{ maListItemSelectHdl = rLink ; }
 	const Link& 	GetListItemSelectHdl() const				{ return maListItemSelectHdl; }
-//-----IAccessibility2 Implementation 2009
 	bool			IsSelectionChanged() const { return mbSelectionChanged; }
 	sal_uInt16			GetSelectModifier() const { return mnSelectModifier; }
 
@@ -510,12 +504,10 @@
 	void			SetUserDrawHdl( const Link& rLink )	{ maLBWindow.SetUserDrawHdl( rLink ); }
 	const Link& 	GetUserDrawHdl() const				{ return maLBWindow.GetUserDrawHdl(); }
 
-//IAccessibility2 Implementation 2009-----
 	void			SetFocusHdl( const Link& rLink )	{ maLBWindow.SetFocusHdl( rLink ); }
 	const Link& 	GetFocusHdl() const				{ return maLBWindow.GetFocusHdl(); }
 	void			SetListItemSelectHdl( const Link& rLink )	{ maLBWindow.SetListItemSelectHdl( rLink ); }
 	const Link& 	GetListItemSelectHdl() const	{ return maLBWindow.GetListItemSelectHdl(); }
-//-----IAccessibility2 Implementation 2009
 	void			SetSelectionChangedHdl( const Link& rLnk )	{ maLBWindow.GetEntryList()->SetSelectionChangedHdl( rLnk ); }
 	void			SetCallSelectionChangedHdl( sal_Bool bCall )	{ maLBWindow.GetEntryList()->SetCallSelectionChangedHdl( bCall ); }
 	sal_Bool			IsSelectionChanged() const 					{ return maLBWindow.IsSelectionChanged(); }
diff --git a/main/vcl/inc/svdata.hxx b/main/vcl/inc/svdata.hxx
index 03f509f..b1da853 100644
--- a/main/vcl/inc/svdata.hxx
+++ b/main/vcl/inc/svdata.hxx
@@ -182,9 +182,7 @@
      */
     ImeStatusWindowMode meShowImeStatusWindow;
 
-//IAccessibility2 Implementation 2009-----
 	long m_bEnableAccessInterface;
-//-----IAccessibility2 Implementation 2009
                             DECL_STATIC_LINK( ImplSVAppData, ImplQuitMsg, void* );
                            
 };
diff --git a/main/vcl/inc/vcl/combobox.hxx b/main/vcl/inc/vcl/combobox.hxx
index 9c62caf..a26ed4f 100644
--- a/main/vcl/inc/vcl/combobox.hxx
+++ b/main/vcl/inc/vcl/combobox.hxx
@@ -67,9 +67,7 @@
     DECL_DLLPRIVATE_LINK(   ImplSelectionChangedHdl, void* );
     DECL_DLLPRIVATE_LINK(   ImplUserDrawHdl, UserDrawEvent* );
     DECL_DLLPRIVATE_LINK(   ImplAutocompleteHdl, Edit* );
-    //IAccessibility2 Implementation 2009-----
     DECL_DLLPRIVATE_LINK( ImplListItemSelectHdl , void* );
-    //-----IAccessibility2 Implementation 2009
 
 protected:
     using Window::ImplInit;
@@ -185,9 +183,7 @@
     XubString       GetMRUEntries( xub_Unicode cSep = ';' ) const;
     void            SetMaxMRUCount( sal_uInt16 n );
     sal_uInt16          GetMaxMRUCount() const;
-//IAccessibility2 Implementation 2009-----
     sal_uInt16 	GetMRUCount() const;
-//-----IAccessibility2 Implementation 2009
     void            SetEntryData( sal_uInt16 nPos, void* pNewData );
     void*           GetEntryData( sal_uInt16 nPos ) const;
 
@@ -227,9 +223,7 @@
      */
     using Control::GetIndexForPoint;
     long GetIndexForPoint( const Point& rPoint, sal_uInt16& rPos ) const;
-//IAccessibility2 Implementation 2009-----
   	void  SetMpSubEditAccessibleName(String &aName);
-//-----IAccessibility2 Implementation 2009
 };
 
 #endif  // _COMBOBOX_HXX
diff --git a/main/vcl/inc/vcl/lstbox.hxx b/main/vcl/inc/vcl/lstbox.hxx
index a8d4e20..9266fb1 100644
--- a/main/vcl/inc/vcl/lstbox.hxx
+++ b/main/vcl/inc/vcl/lstbox.hxx
@@ -67,10 +67,8 @@
 	DECL_DLLPRIVATE_LINK(  ImplPopupModeEndHdl, void* );
 	DECL_DLLPRIVATE_LINK(  ImplSelectionChangedHdl, void* );
 	DECL_DLLPRIVATE_LINK(  ImplUserDrawHdl, UserDrawEvent* );
-//IAccessibility2 Implementation 2009-----
 					DECL_DLLPRIVATE_LINK( ImplFocusHdl, void* );					
 					DECL_DLLPRIVATE_LINK( ImplListItemSelectHdl , void* );
-//-----IAccessibility2 Implementation 2009
 protected:
     using Window::ImplInit;
 	SAL_DLLPRIVATE void    ImplInit( Window* pParent, WinBits nStyle );
@@ -220,9 +218,7 @@
 	XubString		GetMRUEntries( xub_Unicode cSep = ';' ) const;
 	void			SetMaxMRUCount( sal_uInt16 n );
 	sal_uInt16			GetMaxMRUCount() const;
-//IAccessibility2 Implementation 2009-----
 	sal_uInt16 			GetMRUCount() const;
-//-----IAccessibility2 Implementation 2009
     sal_uInt16			GetDisplayLineCount() const;
 
 	void			EnableMirroring();
diff --git a/main/vcl/inc/vcl/menu.hxx b/main/vcl/inc/vcl/menu.hxx
index 411649b..594e4c5 100644
--- a/main/vcl/inc/vcl/menu.hxx
+++ b/main/vcl/inc/vcl/menu.hxx
@@ -151,9 +151,7 @@
 	sal_uInt16				nMenuFlags;
 	sal_uInt16				nDefaultItem;		// Id vom Default-Item
 	sal_uInt16				nSelectedId;
-//IAccessibility2 Implementation 2009-----
 	sal_uInt16				nHighlightedItem;
-//-----IAccessibility2 Implementation 2009
 	// Fuer Ausgabe:
 	sal_uInt16				nCheckPos;
 	sal_uInt16				nImagePos;
@@ -244,14 +242,12 @@
 	sal_uInt16				GetItemPos( sal_uInt16 nItemId ) const;
 	MenuItemType		GetItemType( sal_uInt16 nPos ) const;
 	sal_uInt16				GetCurItemId() const;
-//IAccessibility2 Implementation 2009-----
 	void 					SetHightlightItem( sal_uInt16 nHighlightedItem );
 	sal_uInt16 				GetHighlightItem() const;
 
 	XubString			GetItemAccKeyStrFromPos(sal_uInt16 nPos ) const ;
 
 	sal_Bool				IsTemporaryItemFromPos(sal_uInt16 nPos ) const;
-//-----IAccessibility2 Implementation 2009
 	void				SetDefaultItem( sal_uInt16 nItemId )	{ nDefaultItem = nItemId; }
 	sal_uInt16				GetDefaultItem() const				{ return nDefaultItem; }
 
@@ -380,9 +376,7 @@
 
 	void				SetAccessibleDescription( sal_uInt16 nItemId, const XubString& rStr );
 	XubString			GetAccessibleDescription( sal_uInt16 nItemId ) const;
-//IAccessibility2 Implementation 2009
 	Menu* GetStartedFromMenu(){ return pStartedFrom ;}
-//-----IAccessibility2 Implementation 2009
     
     // returns whether the item a position nItemPos is highlighted or not.
     bool  IsHighlighted( sal_uInt16 nItemPos ) const;
diff --git a/main/vcl/inc/vcl/svapp.hxx b/main/vcl/inc/vcl/svapp.hxx
index 3c21c4a..a972701 100644
--- a/main/vcl/inc/vcl/svapp.hxx
+++ b/main/vcl/inc/vcl/svapp.hxx
@@ -448,10 +448,8 @@
     
     static void                 ShowNativeErrorBox(const String& sTitle  ,
                                                    const String& sMessage);
-//IAccessibility2 Implementation 2009-----
 	static bool					EnableAccessInterface(bool bEnable);
 	static bool					IsEnableAccessInterface();
-//-----IAccessibility2 Implementation 2009
 
     // IME Status Window Control:
 
@@ -518,7 +516,6 @@
     PostUserEvent( Link() );
 }
 
-//IAccessibility2 Implementation 2009-----
 #ifdef WNT
 VCL_DLLPUBLIC sal_Bool HasAtHook();
 VCL_DLLPUBLIC bool IsWNTInitAccessBridge();
@@ -540,5 +537,4 @@
 	bool m_bIsEnableAccessInterface;
 };
 #endif
-//-----IAccessibility2 Implementation 2009
 #endif // _APP_HXX
diff --git a/main/vcl/inc/vcl/vclevent.hxx b/main/vcl/inc/vcl/vclevent.hxx
index f5f5cb7..2ea8d40 100644
--- a/main/vcl/inc/vcl/vclevent.hxx
+++ b/main/vcl/inc/vcl/vclevent.hxx
@@ -154,10 +154,8 @@
 #define VCLEVENT_ITEM_COLLAPSED             1175
 // <--
 #define VCLEVENT_DROPDOWN_PRE_OPEN          1176
-//IAccessibility2 Implementation 2009-----
 #define VCLEVENT_LISTBOX_FOCUSITEMCHANGED	1180
 // #define VCLEVENT_EDIT_CARETCHANGED  		xxxx	// IA2 CWS. MT: VCL only has selection API - difference for selection_changed vs. caret_changed is handled in accessibility wrapper since OOo 3.2
-//-----IAccessibility2 Implementation 2009
 
 // VclMenuEvent
 #define VCLEVENT_MENU_ACTIVATE              1200
@@ -176,16 +174,13 @@
 #define VCLEVENT_MENU_ITEMCHECKED			1213
 #define VCLEVENT_MENU_ITEMUNCHECKED			1214
 #define VCLEVENT_MENU_ACCESSIBLENAMECHANGED	1215
-//IAccessibility2 Implementation 2009-----
 #define VCLEVENT_TOOLBOX_ITEMWINDOWCHANGED  1216
 #define VCLEVENT_TOOLBOX_ITEMUPDATED  1217
-//-----IAccessibility2 Implementation 2009
 
 #define VCLEVENT_MENU_SHOW                  1250
 #define VCLEVENT_MENU_HIDE                  1251
 
 #define VCLEVENT_TOOLBOX_ITEMWINDOWCHANGED  1216
-//IAccessibility2 Implementation 2009-----
 #define VCLEVENT_LISTBOX_TREEEXPAND             1218
 #define VCLEVENT_LISTBOX_TREECOLLAPSE           1219
 #define VCLEVENT_LISTBOX_TREEFOCUS	            1220
@@ -195,7 +190,6 @@
 
 #define VCLEVENT_LISTBOX_FOCUS             1224
 #define VCLEVENT_LISTBOX_CLEAR             1225
-//-----IAccessibility2 Implementation 2009
 // DockingWindow
 #define VCLEVENT_WINDOW_STARTDOCKING            1227    // pData = DockingData
 #define VCLEVENT_WINDOW_DOCKING                 1228
@@ -207,7 +201,6 @@
 #define VCLEVENT_TOOLBOX_BUTTONSTATECHANGED     1233    // pData = itempos
 #define VCLEVENT_TABLECELL_NAMECHANGED          1234    // pData = struct(Entry, Column, oldText)
 #define VCLEVENT_TABLEROW_SELECT				1235
-// IAccessible2 implementation 2009
 #define VCLEVENT_LISTBOX_STATEUPDATE			1236
 class VCL_DLLPUBLIC VclSimpleEvent
 {
diff --git a/main/vcl/inc/vcl/window.hxx b/main/vcl/inc/vcl/window.hxx
index bc0a10f..5b8fa16 100644
--- a/main/vcl/inc/vcl/window.hxx
+++ b/main/vcl/inc/vcl/window.hxx
@@ -629,11 +629,9 @@
     virtual void        DataChanged( const DataChangedEvent& rDCEvt );
     virtual long        PreNotify( NotifyEvent& rNEvt );
     virtual long        Notify( NotifyEvent& rNEvt );
-//IAccessibility2 Implementation 2009-----
     virtual void        NotifyVCLEvent( sal_uLong nEvent ,void* pData = NULL);
     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > > GetAccFlowToSequence();
 	virtual void SwitchView() {}
-//-----IAccessibility2 Implementation 2009
     virtual Window*     GetPreferredKeyInputWindow();
 
     /*virtual*/ void    AddEventListener( const Link& rEventListener );
diff --git a/main/vcl/source/app/svapp.cxx b/main/vcl/source/app/svapp.cxx
index 6b343d2..66cdc9f 100644
--- a/main/vcl/source/app/svapp.cxx
+++ b/main/vcl/source/app/svapp.cxx
@@ -2049,13 +2049,11 @@
 
 sal_Bool Application::IsAccessibilityEnabled()
 {
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 	return IsWNTInitAccessBridge();
 #else 
     return sal_False;
 #endif 
-//-----IAccessible2 Implementation 2009
 }
 
 sal_Bool InitAccessBridge( sal_Bool bShowCancel, sal_Bool &rCancelled )
@@ -2091,7 +2089,6 @@
     return bRet;
 }
 
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 sal_Bool HasAtHook()
 {
@@ -2112,7 +2109,6 @@
 	return sal_False;
 }
 #endif
-//-----IAccessible2 Implementation 2009
 // MT: AppProperty, AppEvent was in oldsv.cxx, but is still needed...
 // ------------------------------------------------------------------------
 
@@ -2134,7 +2130,6 @@
         delete pHandler;
     pHandler = p;
 }
-//IAccessible2 Implementation 2009-----
 bool Application::EnableAccessInterface(bool bEnable)
 {
 #ifdef WNT
@@ -2148,7 +2143,6 @@
 {
 	return ImplGetSVData()->maAppData.m_bEnableAccessInterface;
 }
-//-----IAccessibility2 Implementation 2009
 
 
 
diff --git a/main/vcl/source/app/svdata.cxx b/main/vcl/source/app/svdata.cxx
index 50cc0d8..32237f7 100644
--- a/main/vcl/source/app/svdata.cxx
+++ b/main/vcl/source/app/svdata.cxx
@@ -36,7 +36,6 @@
 
 #include "unotools/fontcfg.hxx"
 
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_HPP_
 #include <com/sun/star/accessibility/XAccessible.hpp>
@@ -45,7 +44,6 @@
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #endif
 #endif
-//-----IAccessible2 Implementation 2009
 #include "vos/mutex.hxx"
 
 #include "cppuhelper/implbase1.hxx"
@@ -77,13 +75,11 @@
 #include "com/sun/star/java/JavaDisabledException.hpp"
 
 #include <stdio.h>
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 #include <unotools/processfactory.hxx>
 #include <com/sun/star/accessibility/XMSAAService.hpp>
 #include <win/g_msaasvc.h>
 #endif
-//-----IAccessible2 Implementation 2009
 
 namespace {
 
@@ -149,12 +145,10 @@
             break;
         }
     }
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 	//Default enable the acc bridge interface
 	pImplSVData->maAppData.m_bEnableAccessInterface =true;
 #endif
-//-----IAccessible2 Implementation 2009
     
     // mark default layout border as unitialized
     pImplSVData->maAppData.mnDefaultLayoutBorder = -1;
@@ -362,7 +356,6 @@
     }
     return ret;
 }
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 void AccessBridgehandleExistingWindow(Window * pWindow, bool bShow)
 {
@@ -444,7 +437,6 @@
 	}
 }
 #endif
-//-----IAccessible2 Implementation 2009
 
 bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
 {
@@ -476,7 +468,6 @@
 
             if( xFactory.is() )
             {
-//IAccessible2 Implementation 2009-----
 #ifdef WNT
 				pSVData->mxAccessBridge = xFactory->createInstance(
 			               OUString::createFromAscii( "com.sun.star.accessibility.MSAAService" ) ); 
@@ -491,7 +482,6 @@
                     bSuccess = false;
                 return bSuccess;
 #endif
-//-----IAccessible2 Implementation 2009
                 css::uno::Reference< XExtendedToolkit > xToolkit = 
                     css::uno::Reference< XExtendedToolkit >(Application::GetVCLToolkit(), UNO_QUERY);
 
diff --git a/main/vcl/source/app/svmain.cxx b/main/vcl/source/app/svmain.cxx
index 1e02214..8cc67ea 100644
--- a/main/vcl/source/app/svmain.cxx
+++ b/main/vcl/source/app/svmain.cxx
@@ -55,11 +55,9 @@
 #include <process.h>    // for _beginthreadex
 #include <ole2.h>   // for _beginthreadex
 #include <tools/postwin.h>
-//IAccessibility2 Implementation 2009-----
 #include <com/sun/star/accessibility/XMSAAService.hpp>
 #include <win/g_msaasvc.h>
 using namespace com::sun::star::accessibility;
-//-----IAccessibility2 Implementation 2009
 #endif
 
 // [ed 5/14/02 Add in explicit check for quartz graphics.  OS X will define
@@ -220,12 +218,10 @@
 	}
 
     DeInitVCL();
-//IAccessibility2 Implementation 2009-----
 	#ifdef WNT
 		if( g_acc_manager1 )
 			g_acc_manager1->release();
 	#endif 
-//-----IAccessibility2 Implementation 2009
     return bInit;
 }
 
diff --git a/main/vcl/source/control/combobox.cxx b/main/vcl/source/control/combobox.cxx
index 85be67f..70f9512 100644
--- a/main/vcl/source/control/combobox.cxx
+++ b/main/vcl/source/control/combobox.cxx
@@ -215,9 +215,7 @@
 	mpImplLB->SetDoubleClickHdl( LINK( this, ComboBox, ImplDoubleClickHdl ) );
 	mpImplLB->SetUserDrawHdl( LINK( this, ComboBox, ImplUserDrawHdl ) );
 	mpImplLB->SetSelectionChangedHdl( LINK( this, ComboBox, ImplSelectionChangedHdl ) );
-//IAccessibility2 Implementation 2009-----
 	mpImplLB->SetListItemSelectHdl( LINK( this, ComboBox, ImplListItemSelectHdl ) );
-//-----IAccessibility2 Implementation 2009
 	mpImplLB->Show();
 
 	if ( mpFloatWin )
@@ -276,13 +274,11 @@
 {
 	return mpSubEdit->GetAutocompleteHdl().IsSet();
 }
-//IAccessibility2 Implementation 2009-----
 void  ComboBox::SetMpSubEditAccessibleName(String &aName)
 {
 	if(mpSubEdit!=NULL)
         mpSubEdit->SetAccessibleName(aName);
 }              
-//-----IAccessibility2 Implementation 2009
 // -----------------------------------------------------------------------
 
 IMPL_LINK( ComboBox, ImplClickBtnHdl, void*, EMPTYARG )
@@ -477,13 +473,11 @@
 
 	return 0;
 }
-//IAccessibility2 Implementation 2009-----
 IMPL_LINK( ComboBox, ImplListItemSelectHdl,  void*, EMPTYARG )
 {
     ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT );
 	return 1;
 }
-//-----IAccessibility2 Implementation 2009
 // -----------------------------------------------------------------------
 
 IMPL_LINK( ComboBox, ImplCancelHdl, void*, EMPTYARG )
@@ -1435,12 +1429,10 @@
 	return mpImplLB->GetMaxMRUCount();
 }
 
-//IAccessibility2 Implementation 2009-----
 sal_uInt16 ComboBox::GetMRUCount() const
 {
 	return mpImplLB->GetEntryList()->GetMRUCount();
 }
-//-----IAccessibility2 Implementation 2009
 // -----------------------------------------------------------------------
 
 sal_uInt16 ComboBox::GetDisplayLineCount() const
diff --git a/main/vcl/source/control/edit.cxx b/main/vcl/source/control/edit.cxx
index 98ea1cd..c8c1af1 100644
--- a/main/vcl/source/control/edit.cxx
+++ b/main/vcl/source/control/edit.cxx
@@ -954,7 +954,7 @@
                     ++nChgPos;
 
                 xub_StrLen nChgLen = static_cast< xub_StrLen >( nTmpLen - nChgPos );
-                String aChgText( aTmpText.copy( nChgPos ), nChgLen );
+                String aChgText( aTmpText.copy( nChgPos ).getStr(), nChgLen );
 
                 // remove text from first pos to be changed to current pos
                 maText.Erase( static_cast< xub_StrLen >( nChgPos ), static_cast< xub_StrLen >( nTmpPos - nChgPos ) );
@@ -2498,10 +2498,8 @@
             return;
 
         // #i13677# notify edit listeners about caret position change
-//IAccessibility2 Implementation 2009-----
         //ImplCallEventListeners( VCLEVENT_EDIT_SELECTIONCHANGED );
         ImplCallEventListeners( VCLEVENT_EDIT_CARETCHANGED );
-//-----IAccessibility2 Implementation 2009
         // FIXME: this is currently only on aqua
         // check for other platforms that need similar handling
         if( ImplGetSVData()->maNWFData.mbNoFocusRects &&
@@ -2656,15 +2654,12 @@
 			if ( aNew != maSelection )
 			{
                 ImplClearLayoutData();
-//IAccessibility2 Implementation 2009-----
 				Selection aTemp = maSelection;
-//-----IAccessibility2 Implementation 2009
 				maSelection = aNew;
 
 				if ( bPaint && ( aOld.Len() || aNew.Len() || IsPaintTransparent() ) )
                     ImplInvalidateOrRepaint( 0, maText.Len() );
 				ImplShowCursor();
-//IAccessibility2 Implementation 2009-----
 				sal_Bool bCaret = sal_False, bSelection = sal_False;
 				long nB=aNew.Max(), nA=aNew.Min(),oB=aTemp.Max(), oA=aTemp.Min();
 				long nGap = nB-nA, oGap = oB-oA;
@@ -2686,7 +2681,6 @@
 					else
 						ImplCallEventListeners( VCLEVENT_EDIT_SELECTIONCHANGED );
 				}
-//-----IAccessibility2 Implementation 2009
                 // #103511# notify combobox listeners of deselection
                 if( !maSelection && GetParent() && GetParent()->GetType() == WINDOW_COMBOBOX )
                     ((Edit*)GetParent())->ImplCallEventListeners( VCLEVENT_COMBOBOX_DESELECT );
diff --git a/main/vcl/source/control/ilstbox.cxx b/main/vcl/source/control/ilstbox.cxx
index 749f74c..8e97ca1 100644
--- a/main/vcl/source/control/ilstbox.cxx
+++ b/main/vcl/source/control/ilstbox.cxx
@@ -917,11 +917,9 @@
 
 				mnCurrentPos = nSelect;
 				mbTrackingSelect = true;
-				//IAccessibility2 Impplementaton 2009-----
 				sal_Bool bCurPosChange = (mnCurrentPos != nSelect);
 				//SelectEntries( nSelect, LET_MBDOWN, rMEvt.IsShift(), rMEvt.IsMod1() );
 				SelectEntries( nSelect, LET_MBDOWN, rMEvt.IsShift(), rMEvt.IsMod1() ,bCurPosChange);
-				//-----IAccessibility2 Impplementaton 2009
 				mbTrackingSelect = false;
 				if ( mbGrabFocus )
 					GrabFocus();
@@ -992,14 +990,12 @@
 			                ImplCallSelect();
 			                mbTravelSelect = false;
                         }
-//IAccessibility2 Implementation 2009----
 						// When list box selection change by mouse move, notity  
 						// VCLEVENT_LISTBOX_SELECT vcl event.
 						else
 						{
 							maListItemSelectHdl.Call(NULL);
 						}
-//----IAccessibility2 Implementation 2009
 		            }
 					mbTrackingSelect = false;
 				}
@@ -1232,12 +1228,10 @@
             maFocusRect.SetSize( aSz );
 			if( HasFocus() )
 				ImplShowFocusRect();
-//IAccessibility2 Implementation 2009----
 			if (bSelectPosChange)
 			{
 				maFocusHdl.Call(reinterpret_cast<void*>(nSelect));
 			}
-//----IAccessibility2 Implementation 2009
 		}
         ImplClearLayoutData();
 	}
@@ -1700,12 +1694,10 @@
 		DBG_ASSERT( !mpEntryList->IsEntryPosSelected( nSelect ) || mbMulti, "ImplListBox: Selecting same Entry" );
 	    if( nSelect >= mpEntryList->GetEntryCount() )
             nSelect = mpEntryList->GetEntryCount()-1;
-//IAccessibility2 Implementation 2009-----
 		sal_Bool bCurPosChange = (mnCurrentPos != nSelect);
 		mnCurrentPos = nSelect;
 		//if ( SelectEntries( nSelect, eLET, bShift, bCtrl ) )
 		if(SelectEntries( nSelect, eLET, bShift, bCtrl ,bCurPosChange))
-//-----IAccessibility2 Implementation 2009
 		{
 			mbTravelSelect = true;
 			mnSelectModifier = rKEvt.GetKeyCode().GetModifier();
@@ -2181,9 +2173,7 @@
     const ImplEntryType* pEntry = mpEntryList->GetEntryPtr( nItem );
     Size aSz( GetSizePixel().Width(), pEntry ? pEntry->mnHeight : GetEntryHeight() );
     //long nY = mpEntryList->GetAddedHeight( nItem, GetTopEntry() ) - mpEntryList->GetAddedHeight( GetTopEntry() );
-	//IAccessibility2 Impplementaton 2009-----
     long nY = mpEntryList->GetAddedHeight( nItem, GetTopEntry() ) + GetEntryList()->GetMRUCount()*GetEntryHeight();
-	//-----IAccessibility2 Impplementaton 2009
     Rectangle aRect( Point( 0, nY ), aSz );
     return aRect;
 }
diff --git a/main/vcl/source/control/lstbox.cxx b/main/vcl/source/control/lstbox.cxx
index f44c06a..a6e3338 100644
--- a/main/vcl/source/control/lstbox.cxx
+++ b/main/vcl/source/control/lstbox.cxx
@@ -170,10 +170,8 @@
 	mpImplLB->SetCancelHdl( LINK( this, ListBox, ImplCancelHdl ) );
 	mpImplLB->SetDoubleClickHdl( LINK( this, ListBox, ImplDoubleClickHdl ) );
 	mpImplLB->SetUserDrawHdl( LINK( this, ListBox, ImplUserDrawHdl ) );
-//IAccessibility2 Implementation 2009-----
 	mpImplLB->SetFocusHdl( LINK( this, ListBox, ImplFocusHdl ) );
 	mpImplLB->SetListItemSelectHdl( LINK( this, ListBox, ImplListItemSelectHdl ) );
-//-----IAccessibility2 Implementation 2009
 	mpImplLB->SetPosPixel( Point() );
     mpImplLB->SetEdgeBlending(GetEdgeBlending());
 	mpImplLB->Show();
@@ -253,7 +251,6 @@
 
 	return 1;
 }
-//IAccessibility2 Implementation 2009-----
 IMPL_LINK( ListBox, ImplFocusHdl, void *, nPos )
 {
     ImplCallEventListeners( VCLEVENT_LISTBOX_FOCUS , nPos);
@@ -264,7 +261,6 @@
     ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT );
 	return 1;
 }
-//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
@@ -1076,7 +1072,6 @@
 		mpImplWin->SetImage( aImage );
 		mpImplWin->Invalidate();
 	}
-	// IAccessible2 implementation 2009
 	NotifyVCLEvent( VCLEVENT_LISTBOX_STATEUPDATE);
 }
 
@@ -1223,7 +1218,6 @@
 {
 	if ( nPos < mpImplLB->GetEntryList()->GetEntryCount() )
 	{
-		// IAccessible2 implementation 2009
 		sal_uInt16 oldSelectCount = GetSelectEntryCount(), newSelectCount = 0, nCurrentPos = mpImplLB->GetCurrentPos();
 		mpImplLB->SelectEntry( nPos + mpImplLB->GetEntryList()->GetMRUCount(), bSelect );
 		newSelectCount = GetSelectEntryCount();
@@ -1637,12 +1631,10 @@
 {
 	return mpImplLB->GetMaxMRUCount();
 }
-//IAccessibility2 Implementation 2009-----
 sal_uInt16 ListBox::GetMRUCount() const
 {
 	return mpImplLB->GetEntryList()->GetMRUCount();
 }
-//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
diff --git a/main/vcl/source/control/morebtn.cxx b/main/vcl/source/control/morebtn.cxx
index 799e08c..e58f3ba 100644
--- a/main/vcl/source/control/morebtn.cxx
+++ b/main/vcl/source/control/morebtn.cxx
@@ -153,10 +153,6 @@
 	mbState = !mbState;
     ShowState();
 
-	// Hier den Click-Handler rufen, damit vorher die Controls initialisiert
-	// werden koennen
-	//PushButton::Click(); // IAccessibility2 Implementation 2009
-
 	// Je nach Status die Fenster updaten
 	if ( mbState )
 	{
@@ -197,9 +193,7 @@
 			pWindow = mpMBData->mpItemList->Next();
 		}
 	}
-//IAccessibility2 Implementation 2009-----
 	PushButton::Click();
-//-----IAccessibility2 Implementation 2009
 }
 
 // -----------------------------------------------------------------------
diff --git a/main/vcl/source/control/tabctrl.cxx b/main/vcl/source/control/tabctrl.cxx
index 6b8bdfb..e019e0b 100644
--- a/main/vcl/source/control/tabctrl.cxx
+++ b/main/vcl/source/control/tabctrl.cxx
@@ -619,9 +619,7 @@
         }
 
         pPage->ActivatePage();
-//IAccessibility2 Implementation 2009-----
 		pPage->Show();
-//-----IAccessibility2 Implementation 2009
 
         if ( pOldPage && pOldPage->HasChildPathFocus() )
         {
@@ -633,9 +631,7 @@
                 GrabFocus();
         }
 
-//IAccessibility2 Implementation 2009-----
         // pPage->Show(); 
-//-----IAccessibility2 Implementation 2009
     }
 
     if ( pOldPage )
diff --git a/main/vcl/source/gdi/configsettings.cxx b/main/vcl/source/gdi/configsettings.cxx
index 5a57a1e..372ed38 100644
--- a/main/vcl/source/gdi/configsettings.cxx
+++ b/main/vcl/source/gdi/configsettings.cxx
@@ -131,7 +131,7 @@
     m_aSettings.clear();
 
     Sequence< OUString > aNames( GetNodeNames( OUString() ) );
-    m_aSettings.resize( aNames.getLength() );
+    m_aSettings.rehash( aNames.getLength() );
 
     for( int j = 0; j < aNames.getLength(); j++ )
     {
diff --git a/main/vcl/source/window/btndlg.cxx b/main/vcl/source/window/btndlg.cxx
index bfeaa2b..ed53060 100644
--- a/main/vcl/source/window/btndlg.cxx
+++ b/main/vcl/source/window/btndlg.cxx
@@ -289,7 +289,6 @@
 	if ( nType == STATE_CHANGE_INITSHOW )
 	{
 		ImplPosControls();
-//IAccessibility2 Implementation 2009-----
 		ImplBtnDlgItem* pItem = mpItemList->First();
 		while ( pItem )
 		{
@@ -297,7 +296,6 @@
 				pItem->mpPushButton->SetZOrder(0, WINDOW_ZORDER_LAST);
 			pItem = mpItemList->Next();
 		}
-//-----IAccessibility2 Implementation 2009
 
 		// Focus evt. auf den entsprechenden Button setzen
 		if ( mnFocusButtonId != BUTTONDIALOG_BUTTON_NOTFOUND )
diff --git a/main/vcl/source/window/dlgctrl.cxx b/main/vcl/source/window/dlgctrl.cxx
index 82348ba..5b5603d 100644
--- a/main/vcl/source/window/dlgctrl.cxx
+++ b/main/vcl/source/window/dlgctrl.cxx
@@ -835,7 +835,6 @@
                 if ( nStyle & WB_GROUP )
                     break;
 
-//IAccessibility2 Implementation 2009-----
 				//Solution:Pure window shouldn't get window after controls such as buttons. 
                 //if ( pWindow->IsVisible() && pWindow->IsEnabled() && pWindow->IsInputEnabled() )
 				if ( pWindow->IsVisible() && pWindow->IsEnabled() && 
@@ -846,7 +845,6 @@
 									pWindow->GetType() != WINDOW_CONTROL
 								   )
 	   )
-//-----IAccessibility2 Implementation 2009
                 {
                     pWindow->ImplControlFocus( GETFOCUS_CURSOR | GETFOCUS_BACKWARD );
                     return sal_True;
@@ -1309,7 +1307,6 @@
 	}
 	return pWindow;
 }
-//-----IAccessibility2 Implementation 2009
 
 // -----------------------------------------------------------------------
 
diff --git a/main/vcl/source/window/menu.cxx b/main/vcl/source/window/menu.cxx
index 81d8047..63cdd0f 100644
--- a/main/vcl/source/window/menu.cxx
+++ b/main/vcl/source/window/menu.cxx
@@ -1573,7 +1573,6 @@
 {
     return nSelectedId;
 }
-//IAccessibility2 Implementation 2009
 void Menu::SetHightlightItem( sal_uInt16 nHighlightedItem )
 {
 	this->nHighlightedItem = nHighlightedItem;
@@ -3758,12 +3757,10 @@
             String aTmpEntryText( ResId( SV_RESID_STRING_NOSELECTIONPOSSIBLE, *pResMgr ) );
             MenuItemData* pData = pItemList->Insert(
                 0xFFFF, MENUITEM_STRING, 0, aTmpEntryText, Image(), NULL, 0xFFFF );
-//IAccessibility2 Implementation 2009-----
 		sal_uInt16          nmPos;
 		pData = pItemList->GetData( pData->nId, nmPos );
                 pData->bIsTemporary = sal_True;
 		ImplCallEventListeners(VCLEVENT_MENU_SUBMENUCHANGED,nmPos);
-//-----IAccessibility2 Implementation 2009
         }
     }
     else if ( Application::GetSettings().GetStyleSettings().GetAutoMnemonic() && !( nMenuFlags & MENU_FLAG_NOAUTOMNEMONICS ) )
@@ -4040,9 +4037,7 @@
         // otherwise the entry will not be read when the menu is opened again
         if( nHighlightedItem != ITEMPOS_INVALID )
             pMenu->ImplCallEventListeners( VCLEVENT_MENU_DEHIGHLIGHT, nHighlightedItem );
-//IAccessibility2 Implementation 2009-----
 	pMenu->SetHightlightItem(ITEMPOS_INVALID);
-//-----IAccessibility2 Implementation 2009
         if( !bKeyInput && pMenu && pMenu->pStartedFrom && !pMenu->pStartedFrom->bIsMenuBar )
         {
             // #102461# remove highlight in parent
@@ -4713,9 +4708,7 @@
             }
         }
         HighlightItem( nHighlightedItem, sal_True );
-//IAccessibility2 Implementation 2009-----
 	pMenu->SetHightlightItem(nHighlightedItem);
-//-----IAccessibility2 Implementation 2009
         pMenu->ImplCallHighlight( nHighlightedItem );
     }
     else
@@ -5017,10 +5010,8 @@
                     MenuFloatingWindow* pFloat = ((PopupMenu*)pMenu->pStartedFrom)->ImplGetFloatingWindow();
                     pFloat->GrabFocus();
                     pFloat->KillActivePopup();
-//IAccessibility2 Implementation 2009-----
   		    sal_uInt16 highlightItem = pFloat->GetHighlightedItem();
 		    pFloat->ChangeHighlightItem(highlightItem, sal_False);
-//-----IAccessibility2 Implementation 2009
                 }
             }
         }
@@ -5610,9 +5601,7 @@
     nHighlightedItem = (sal_uInt16)n;
     DBG_ASSERT( ( nHighlightedItem == ITEMPOS_INVALID ) || pMenu->ImplIsVisible( nHighlightedItem ), "ChangeHighlightItem: Not visible!" );
     HighlightItem( nHighlightedItem, sal_True );
-//IAccessibility2 Implementation 2009-----
     pMenu->SetHightlightItem(nHighlightedItem);
-//-----IAccessibility2 Implementation 2009
     pMenu->ImplCallHighlight( nHighlightedItem );
 
     if( mbAutoPopup )
diff --git a/main/vcl/source/window/toolbox.cxx b/main/vcl/source/window/toolbox.cxx
index f960996..5cb3e59 100644
--- a/main/vcl/source/window/toolbox.cxx
+++ b/main/vcl/source/window/toolbox.cxx
@@ -6065,11 +6065,9 @@
                 mnCurPos = aPos;
             ImplShowFocus();
 
-//IAccessibility2 Implementation 2009-----
 			if( pItem->mpWindow )
 				pItem->mpWindow->GrabFocus();
 			if( pItem != pOldItem )
-//-----IAccessibility2 Implementation 2009
             ImplCallEventListeners( VCLEVENT_TOOLBOX_HIGHLIGHT );
 		}
 	}
diff --git a/main/vcl/source/window/toolbox2.cxx b/main/vcl/source/window/toolbox2.cxx
index 68d77b7..63fe185 100644
--- a/main/vcl/source/window/toolbox2.cxx
+++ b/main/vcl/source/window/toolbox2.cxx
@@ -1737,11 +1737,9 @@
             ImplCallEventListeners( VCLEVENT_TOOLBOX_BUTTONSTATECHANGED, reinterpret_cast< void* >( nPos ) );
 
             // Notify
-//IAccessibility2 Implementation 2009-----
 		    //Solution:Call accessivle listener to notify state_changed event
 		    ImplCallEventListeners( VCLEVENT_TOOLBOX_ITEMUPDATED,reinterpret_cast< void* >(nPos) );
 		    //ImplCallEventListeners( VCLEVENT_TOOLBOX_CLICK, reinterpret_cast< void* >( nPos ) );
-//-----IAccessibility2 Implementation 2009
 		}
 	}
 }
diff --git a/main/vcl/source/window/window.cxx b/main/vcl/source/window/window.cxx
index 294c22b..bfd39ff 100644
--- a/main/vcl/source/window/window.cxx
+++ b/main/vcl/source/window/window.cxx
@@ -5397,7 +5397,6 @@
     return nRet;
 }
 
-// IAccessible2 implementation, 2009
 void Window::NotifyVCLEvent( sal_uLong nEvent ,void* pData /*= NULL*/)
 {
 	ImplCallEventListeners( nEvent ,pData);
@@ -9125,7 +9124,6 @@
             case WINDOW_MULTILINEEDIT: nRole = accessibility::AccessibleRole::SCROLL_PANE; break;
 
             case WINDOW_PATTERNFIELD:
-//IAccessibility2 Impplementaton 2009-----
             // Need to set the role of those window control to spinbox
             /*
             case WINDOW_NUMERICFIELD:
@@ -9133,7 +9131,6 @@
             case WINDOW_CURRENCYFIELD:
             case WINDOW_LONGCURRENCYFIELD:
             */
-//-----IAccessibility2 Impplementaton 2009
             case WINDOW_EDIT: nRole = ( GetStyle() & WB_PASSWORD ) ? (accessibility::AccessibleRole::PASSWORD_TEXT) : (accessibility::AccessibleRole::TEXT); break;
 
             case WINDOW_PATTERNBOX:
@@ -9151,7 +9148,6 @@
             case WINDOW_FIXEDTEXT: nRole = accessibility::AccessibleRole::LABEL; break;
             case WINDOW_FIXEDBORDER:
 				nRole = accessibility::AccessibleRole::SEPARATOR; break;
-	    //IAccessibility2 Impplementaton 2009-----
             case WINDOW_FIXEDLINE: 
 				{	if( GetText().Len() > 0 )
 						nRole = accessibility::AccessibleRole::LABEL; 
@@ -9160,7 +9156,6 @@
 					break;
 				}
             //case WINDOW_FIXEDLINE: nRole = accessibility::AccessibleRole::SEPARATOR; break;
-	    //-----IAccessibility2 Impplementaton 2009
             case WINDOW_FIXEDBITMAP:
             case WINDOW_FIXEDIMAGE: nRole = accessibility::AccessibleRole::ICON; break;
             case WINDOW_GROUPBOX: nRole = accessibility::AccessibleRole::GROUP_BOX; break;
@@ -9175,13 +9170,11 @@
             case WINDOW_DATEFIELD:
             case WINDOW_TIMEFIELD: nRole = accessibility::AccessibleRole::DATE_EDITOR; break;
 
-//IAccessibility2 Impplementaton 2009-----
             // Need to set the role of those window control to spinbox
             case WINDOW_NUMERICFIELD:
             case WINDOW_METRICFIELD:
             case WINDOW_CURRENCYFIELD:
             case WINDOW_LONGCURRENCYFIELD:
-//-----IAccessibility2 Impplementaton 2009
             case WINDOW_SPINFIELD: nRole = accessibility::AccessibleRole::SPIN_BOX; break;
 
             case WINDOW_TOOLBOX: nRole = accessibility::AccessibleRole::TOOL_BAR; break;
@@ -9233,12 +9226,10 @@
    if ( !mpWindowImpl->mpAccessibleInfos )
         mpWindowImpl->mpAccessibleInfos = new ImplAccessibleInfos;
 
-//IAccessibility2 Implementation 2009-----
 	String oldName = GetAccessibleName();
     delete mpWindowImpl->mpAccessibleInfos->pAccessibleName;
     mpWindowImpl->mpAccessibleInfos->pAccessibleName = new String( rName );
     ImplCallEventListeners( VCLEVENT_WINDOW_FRAMETITLECHANGED, &oldName );	
-//-----IAccessibility2 Implementation 2009
 }
 
 String Window::GetAccessibleName() const
@@ -9283,12 +9274,10 @@
                 if ( pLabel && pLabel != this )
                     aAccessibleName = pLabel->GetText();
             }
-		//IAccessibility2 Implementation 2009-----
 		if ( !aAccessibleName.Len() )
 	        {
 	            aAccessibleName = GetQuickHelpText();
 	        }
-		//-----IAccessibility2 Implementation 2009
             break;
 
             case WINDOW_IMAGEBUTTON:
@@ -9302,7 +9291,6 @@
                 }
             break;
 
-//IAccessibility2 Implementation 2009-----
 			case WINDOW_TOOLBOX:
 				aAccessibleName = GetText();
 				if( aAccessibleName.Len() == 0 )
@@ -9311,7 +9299,6 @@
 			case WINDOW_MOREBUTTON:
 				aAccessibleName = mpWindowImpl->maText;
 				break;
-//-----IAccessibility2 Implementation 2009
             default:
                 aAccessibleName = GetText();
                 break;
diff --git a/main/vcl/unx/generic/dtrans/X11_selection.cxx b/main/vcl/unx/generic/dtrans/X11_selection.cxx
index ce47220..bdfbb8f 100644
--- a/main/vcl/unx/generic/dtrans/X11_selection.cxx
+++ b/main/vcl/unx/generic/dtrans/X11_selection.cxx
@@ -739,8 +739,8 @@
 	::std::hash_map< OUString, Atom, OUStringHash >::const_iterator it;
 	if( ( it = m_aStringToAtom.find( rString ) ) == m_aStringToAtom.end() )
 	{
-        static Atom nNoDisplayAtoms = 1;
-		Atom aAtom = m_pDisplay ? XInternAtom( m_pDisplay, OUStringToOString( rString, RTL_TEXTENCODING_ISO_8859_1 ), False ) : nNoDisplayAtoms++;
+		static Atom nNoDisplayAtoms = 1;
+		Atom aAtom = m_pDisplay ? XInternAtom( m_pDisplay, OUStringToOString( rString, RTL_TEXTENCODING_ISO_8859_1).getStr(), False ) : nNoDisplayAtoms++;
 		m_aStringToAtom[ rString ] = aAtom;
 		m_aAtomToString[ aAtom ] = rString;
 	}
diff --git a/main/vcl/unx/generic/gdi/salgdi3.cxx b/main/vcl/unx/generic/gdi/salgdi3.cxx
index 37dde06..8dbceb1 100644
--- a/main/vcl/unx/generic/gdi/salgdi3.cxx
+++ b/main/vcl/unx/generic/gdi/salgdi3.cxx
@@ -131,7 +131,7 @@
         return;
 
     // feed psprint's kerning list into a lookup-friendly container
-    maUnicodeKernPairs.resize( rKernPairs.size() );
+    maUnicodeKernPairs.rehash( rKernPairs.size() );
     PspKernPairs::const_iterator it = rKernPairs.begin();
     for(; it != rKernPairs.end(); ++it )
     {
diff --git a/main/vcl/unx/generic/printer/cupsmgr.cxx b/main/vcl/unx/generic/printer/cupsmgr.cxx
index d565bf6..ae1c856 100644
--- a/main/vcl/unx/generic/printer/cupsmgr.cxx
+++ b/main/vcl/unx/generic/printer/cupsmgr.cxx
@@ -274,7 +274,7 @@
     {
         // This CUPS method is not at all thread-safe we need
         // to dup the pointer to a static buffer it returns ASAP
-        OString aResult = m_pFunction( m_aParameter );
+        OString aResult = m_pFunction( m_aParameter.getStr() );
         MutexGuard aGuard( *m_pSyncMutex );
         m_aResult = aResult;
         m_aCondition.set();
@@ -289,9 +289,7 @@
             )
         {
             #if OSL_DEBUG_LEVEL > 1
-            fprintf( stderr, "cupsGetPPD %s timed out\n",
-            (const sal_Char *) m_aParameter
-            );
+            fprintf( stderr, "cupsGetPPD %s timed out\n", m_aParameter.getStr() );
             #endif
         }
         m_pSyncMutex->acquire();
diff --git a/main/vcl/unx/generic/printergfx/printerjob.cxx b/main/vcl/unx/generic/printergfx/printerjob.cxx
index 3253bd6..1eb5792 100644
--- a/main/vcl/unx/generic/printergfx/printerjob.cxx
+++ b/main/vcl/unx/generic/printergfx/printerjob.cxx
@@ -361,7 +361,7 @@
 
 static bool isAscii( const rtl::OUString& rStr )
 {
-    const sal_Unicode* pStr = rStr;
+    const sal_Unicode* pStr = rStr.getStr();
     sal_Int32 nLen = rStr.getLength();
     for( sal_Int32 i = 0; i < nLen; i++ )
         if( pStr[i] > 127 )
diff --git a/main/vcl/unx/generic/printergfx/psputil.cxx b/main/vcl/unx/generic/printergfx/psputil.cxx
index 58dc3d6..fbdf7d4 100644
--- a/main/vcl/unx/generic/printergfx/psputil.cxx
+++ b/main/vcl/unx/generic/printergfx/psputil.cxx
@@ -181,7 +181,7 @@
     sal_uInt64 nOutLength = 0;
     
     if (nInLength > 0 && pFile)
-        pFile->write (rString, nInLength, nOutLength);
+        pFile->write( rString.getStr(), nInLength, nOutLength);
 
     return nInLength == nOutLength;
 }
diff --git a/main/vcl/unx/generic/printergfx/psputil.hxx b/main/vcl/unx/generic/printergfx/psputil.hxx
index 906b6e5..90d8efd 100644
--- a/main/vcl/unx/generic/printergfx/psputil.hxx
+++ b/main/vcl/unx/generic/printergfx/psputil.hxx
@@ -45,6 +45,7 @@
 sal_Int32   getValueOf    (sal_Int32 nValue, sal_Char* pBuffer);
 sal_Int32   appendStr     (const sal_Char* pSrc, sal_Char* pDst);
 sal_Int32   appendStr     (const sal_Char* pSrc, sal_Char* pDst, sal_Int32 nBytes);
+inline sal_Int32 appendStr( const ::rtl::OString& rSrc, sal_Char* pDst) { return appendStr( rSrc.getStr(), pDst);}
 
 sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString);
 sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString, sal_uInt64 nInLength);
diff --git a/main/vcl/unx/gtk/a11y/atkaction.cxx b/main/vcl/unx/gtk/a11y/atkaction.cxx
index 453c479..1665079 100644
--- a/main/vcl/unx/gtk/a11y/atkaction.cxx
+++ b/main/vcl/unx/gtk/a11y/atkaction.cxx
@@ -49,7 +49,7 @@
     static int nIdx = 0;
     nIdx = (nIdx + 1) % nMax;
     aUgly[nIdx] = rString;
-    return aUgly[ nIdx ];
+    return aUgly[ nIdx ].getStr();
 }
 
 static accessibility::XAccessibleAction*
diff --git a/main/vcl/unx/gtk/a11y/atkimage.cxx b/main/vcl/unx/gtk/a11y/atkimage.cxx
index b31f36d..4371474 100644
--- a/main/vcl/unx/gtk/a11y/atkimage.cxx
+++ b/main/vcl/unx/gtk/a11y/atkimage.cxx
@@ -41,7 +41,7 @@
     static int nIdx = 0;
     nIdx = (nIdx + 1) % nMax;
     aUgly[nIdx] = rtl::OUStringToOString( rString, RTL_TEXTENCODING_UTF8 );
-    return aUgly[ nIdx ];
+    return aUgly[ nIdx ].getStr();
 }
 
 static accessibility::XAccessibleImage*
diff --git a/main/vcl/unx/gtk/a11y/atktable.cxx b/main/vcl/unx/gtk/a11y/atktable.cxx
index 92e1481..f821cd8 100644
--- a/main/vcl/unx/gtk/a11y/atktable.cxx
+++ b/main/vcl/unx/gtk/a11y/atktable.cxx
@@ -58,7 +58,7 @@
     static int nIdx = 0;
     nIdx = (nIdx + 1) % nMax;
     aUgly[nIdx] = rtl::OUStringToOString( rString, RTL_TEXTENCODING_UTF8 );
-    return aUgly[ nIdx ];
+    return aUgly[ nIdx ].getStr();
 }
 
 /*****************************************************************************/
diff --git a/main/vcl/unx/gtk/a11y/atkwrapper.cxx b/main/vcl/unx/gtk/a11y/atkwrapper.cxx
index 1da1a35..ef39afc 100644
--- a/main/vcl/unx/gtk/a11y/atkwrapper.cxx
+++ b/main/vcl/unx/gtk/a11y/atkwrapper.cxx
@@ -784,7 +784,7 @@
 //                 pAccessible, aTypeTable[i].name, bTypes[i] );
     }
 
-    GType nType = g_type_from_name( aTypeName );
+    GType nType = g_type_from_name( aTypeName.getStr() );
     if( nType == G_TYPE_INVALID )
     {
         GTypeInfo aTypeInfo = {
@@ -794,7 +794,7 @@
             0, NULL, NULL
         } ;
         nType = g_type_register_static( ATK_TYPE_OBJECT_WRAPPER,
-                                        aTypeName, &aTypeInfo, (GTypeFlags)0 ) ;
+                                        aTypeName.getStr(), &aTypeInfo, (GTypeFlags)0 ) ;
 
         for( int j = 0; j < aTypeTableSize; j++ )
             if( bTypes[j] )
diff --git a/main/vcl/unx/gtk/a11y/atkwrapper.hxx b/main/vcl/unx/gtk/a11y/atkwrapper.hxx
index 504a1a0..58b5a91 100644
--- a/main/vcl/unx/gtk/a11y/atkwrapper.hxx
+++ b/main/vcl/unx/gtk/a11y/atkwrapper.hxx
@@ -113,7 +113,7 @@
 OUStringToGChar(const rtl::OUString& rString )
 {
     rtl::OString aUtf8 = rtl::OUStringToOString( rString, RTL_TEXTENCODING_UTF8 );
-    return g_strdup( aUtf8 );
+    return g_strdup( aUtf8.getStr() );
 }
 
 #define OUStringToConstGChar( string ) rtl::OUStringToOString( string, RTL_TEXTENCODING_UTF8 ).getStr() 
diff --git a/main/vcl/unx/gtk/app/gtkdata.cxx b/main/vcl/unx/gtk/app/gtkdata.cxx
index 988a49a..1efd443 100644
--- a/main/vcl/unx/gtk/app/gtkdata.cxx
+++ b/main/vcl/unx/gtk/app/gtkdata.cxx
@@ -638,7 +638,7 @@
     if( aAppName.getLength() > 0 )
     {
         rtl::OString aPrgName = rtl::OUStringToOString(aAppName, aEnc);
-        g_set_prgname(aPrgName);
+        g_set_prgname( aPrgName.getStr());
     }
     
     // init gtk/gdk
diff --git a/main/vcl/unx/gtk/app/gtkinst.cxx b/main/vcl/unx/gtk/app/gtkinst.cxx
index e6f47f0..2007be4 100644
--- a/main/vcl/unx/gtk/app/gtkinst.cxx
+++ b/main/vcl/unx/gtk/app/gtkinst.cxx
@@ -231,7 +231,7 @@
     }
 #if GTK_CHECK_VERSION(2,10,0)
     GtkRecentManager *manager = gtk_recent_manager_get_default ();
-    gtk_recent_manager_add_item (manager, sGtkURL);
+    gtk_recent_manager_add_item( manager, sGtkURL.getStr());
     (void)rMimeType;
 #else
     static getDefaultFnc sym_gtk_recent_manager_get_default =
diff --git a/main/vcl/unx/gtk/window/gtkframe.cxx b/main/vcl/unx/gtk/window/gtkframe.cxx
index 3a09606..eb3ffcb 100644
--- a/main/vcl/unx/gtk/window/gtkframe.cxx
+++ b/main/vcl/unx/gtk/window/gtkframe.cxx
@@ -984,7 +984,7 @@
         }
         else
             gtk_window_set_wmclass( GTK_WINDOW(m_pWindow),
-                                    X11SalData::getFrameResName( m_nExtStyle ),
+                                    X11SalData::getFrameResName( m_nExtStyle).getStr(),
                                     X11SalData::getFrameClassName() );
     }
 }
@@ -3785,7 +3785,7 @@
 		if (!sAllText.getLength())
             return sal_False;
 	rtl::OString sUTF = rtl::OUStringToOString(sAllText, RTL_TEXTENCODING_UTF8);
-	rtl::OUString sCursorText(sAllText, nPosition);
+	rtl::OUString sCursorText( sAllText.getStr(), nPosition);
 	gtk_im_context_set_surrounding(pContext, sUTF.getStr(), sUTF.getLength(), 
 		rtl::OUStringToOString(sCursorText, RTL_TEXTENCODING_UTF8).getLength());
 	return sal_True;
diff --git a/main/vcl/unx/headless/svptext.cxx b/main/vcl/unx/headless/svptext.cxx
index 90ff6c8..79a60d5 100644
--- a/main/vcl/unx/headless/svptext.cxx
+++ b/main/vcl/unx/headless/svptext.cxx
@@ -189,7 +189,7 @@
         return;
 
     // feed psprint's kerning list into a lookup-friendly container
-    maUnicodeKernPairs.resize( rKernPairs.size() );
+    maUnicodeKernPairs.rehash( rKernPairs.size() );
     PspKernPairs::const_iterator it = rKernPairs.begin();
     for(; it != rKernPairs.end(); ++it )
     {
diff --git a/main/vcl/win/source/window/salframe.cxx b/main/vcl/win/source/window/salframe.cxx
index a33db48..4c6ad9b 100644
--- a/main/vcl/win/source/window/salframe.cxx
+++ b/main/vcl/win/source/window/salframe.cxx
@@ -92,7 +92,6 @@
 using ::std::max;
 #endif
 
-//IAccessibility2 Implementation 2009-----
 #ifdef WNT
 #include <oleacc.h>
 #include <com/sun/star/accessibility/XMSAAService.hpp>
@@ -101,7 +100,6 @@
 #endif
 #include <win/g_msaasvc.h>
 #endif
-//-----IAccessibility2 Implementation 2009
 #include <com/sun/star/uno/Exception.hdl>
 
 #include <time.h>
@@ -163,12 +161,10 @@
 #define Uni_SupplementaryPlanesStart    0x10000
 
 // =======================================================================
-//IAccessibility2 Implementation 2009-----
 #ifdef WNT
 using namespace ::com::sun::star::accessibility;
 XMSAAService* g_acc_manager1 = NULL;
 #endif
-//-----IAccessibility2 Implementation 2009
 static void UpdateFrameGeometry( HWND hWnd, WinSalFrame* pFrame );
 static void SetMaximizedFrameGeometry( HWND hWnd, WinSalFrame* pFrame, RECT* pParentRect = NULL );
 
@@ -6194,7 +6190,6 @@
             ImplHandleIMENotify( hWnd, wParam );
             break;
 
-//IAccessibility2 implementation 2009-----
 #ifdef WNT
 		case WM_GETOBJECT:
 			{
@@ -6247,7 +6242,6 @@
 				break;
 			}
 #endif			
-//-----IAccessibility2 implementation 2009
 
         case WM_APPCOMMAND:
             if( ImplHandleAppCommand( hWnd, lParam ) )
@@ -6469,7 +6463,6 @@
 
 // -----------------------------------------------------------------------
 
-//IAccessibility2 implementation 2009-----
 #ifdef WNT
 bool IsWNTInitAccessBridge()
 {
@@ -6490,4 +6483,3 @@
 	return bPreVal;
 }
 #endif
-//-----IAccessibility2 implementation 2009
diff --git a/main/vos/source/module.cxx b/main/vos/source/module.cxx
index 8698fe4..f06eeb4 100644
--- a/main/vos/source/module.cxx
+++ b/main/vos/source/module.cxx
@@ -39,7 +39,7 @@
 						
 OModule::OModule(const rtl::OUString& ustrModuleName, sal_Int32 nRtldMode) : m_Module(0)
 {
-    if (ustrModuleName)
+    if( !ustrModuleName.isEmpty())
         load(ustrModuleName, nRtldMode);
 }
 
@@ -51,7 +51,7 @@
 
 sal_Bool OModule::load(const rtl::OUString& ustrModuleName, sal_Int32 nRtldMode)
 {
-    VOS_ASSERT(ustrModuleName);
+    VOS_ASSERT( !ustrModuleName.isEmpty());
     
     unload();
     
@@ -76,7 +76,7 @@
 
 void *OModule::getSymbol(const rtl::OUString& strSymbolName)
 {
-    VOS_ASSERT(strSymbolName);
+    VOS_ASSERT( !strSymbolName.isEmpty());
     VOS_ASSERT(m_Module);
 	return ( osl_getSymbol( m_Module, strSymbolName.pData ) );
 }
diff --git a/main/winaccessibility/inc/AccContainerEventListener.hxx b/main/winaccessibility/inc/AccContainerEventListener.hxx
index cc4353d..12de41b 100644
--- a/main/winaccessibility/inc/AccContainerEventListener.hxx
+++ b/main/winaccessibility/inc/AccContainerEventListener.hxx
@@ -89,10 +89,8 @@
 
     virtual void handleSectionChangedEvent (const Any &oldValue, const Any &newValue);
     virtual void handleColumnChangedEvent (const Any &oldValue, const Any &newValue);
-	//IAccessibility2 Implementation 2009-----
 	//for name changed event
     virtual void SAL_CALL handleNameChangedEvent(Any name);
-	//-----IAccessibility2 Implementation 2009
 };
 
 #endif
diff --git a/main/winaccessibility/source/service/AccComponentEventListener.cxx b/main/winaccessibility/source/service/AccComponentEventListener.cxx
index 97b5456..75e5ea2 100644
--- a/main/winaccessibility/source/service/AccComponentEventListener.cxx
+++ b/main/winaccessibility/source/service/AccComponentEventListener.cxx
@@ -191,8 +191,8 @@
             pAgent->UpdateState(pAccessible);
             pAgent->DecreaseState( pAccessible, AccessibleStateType::DEFUNC);
             // 8. label should have no FOCUSABLE state state, Firefox has READONLY state, we can also have.
-			if( getRole() != AccessibleRole::LABEL
-				&& getRole() != AccessibleRole::SCROLL_BAR) //IAccessibility2 Implementation 2009

+            if( getRole() != AccessibleRole::LABEL
+            && getRole() != AccessibleRole::SCROLL_BAR)
                 pAgent->IncreaseState( pAccessible, AccessibleStateType::FOCUSABLE);
         }
         else
diff --git a/main/winaccessibility/source/service/AccContainerEventListener.cxx b/main/winaccessibility/source/service/AccContainerEventListener.cxx
index 0a84db1..46efb58 100644
--- a/main/winaccessibility/source/service/AccContainerEventListener.cxx
+++ b/main/winaccessibility/source/service/AccContainerEventListener.cxx
@@ -548,7 +548,6 @@
     pAgent->NotifyAccEvent(UM_EVENT_COLUMN_CHANGED, pAccessible);

 }

 

-//IAccessibility2 Implementation 2009-----

 void  AccContainerEventListener::handleNameChangedEvent( Any name )

 {

 	if (getRole() == AccessibleRole::COMBO_BOX)

@@ -570,4 +569,3 @@
 	}

 	AccEventListener::handleNameChangedEvent(name);

 }

-//-----IAccessibility2 Implementation 2009

diff --git a/main/winaccessibility/source/service/AccObject.cxx b/main/winaccessibility/source/service/AccObject.cxx
index 5997c05..a39c4db 100644
--- a/main/winaccessibility/source/service/AccObject.cxx
+++ b/main/winaccessibility/source/service/AccObject.cxx
@@ -182,13 +182,11 @@
 
     if( ( TEXT_FRAME == m_accRole   ) && ( m_pParentObj !=NULL )&& ( SCROLL_PANE == m_pParentObj -> m_accRole ) )
         m_pIMAcc->Put_XAccName( m_pParentObj->m_xAccContextRef->getAccessibleName().getStr() );
-	//IAccessibility2 Implementation 2009-----
     if ( PARAGRAPH == m_accRole)
     {
     	::rtl::OUString emptyStr = ::rtl::OUString::createFromAscii("");
     	m_pIMAcc->Put_XAccName(emptyStr.getStr());
     }
-	//-----IAccessibility2 Implementation 2009
     else
         m_pIMAcc->Put_XAccName(m_xAccContextRef->getAccessibleName().getStr());
 
@@ -314,7 +312,6 @@
         m_pIMAcc->Put_XAccValue( val.getStr() );
         break;
     case TREE_ITEM:
-	//IAccessibility2 Implementation 2009-----
     //case CHECK_BOX:	//Commented by Li Xing to disable the value for general checkbox
     case COMBO_BOX:
     case TABLE_CELL:
@@ -326,7 +323,6 @@
 	case CHECK_BOX:
 		if( ( m_pParentObj !=NULL ) && (TREE == m_pParentObj->m_accRole || TREE_ITEM == m_pParentObj->m_accRole ))
 	        m_pIMAcc->Put_XAccValue( GetMAccessibleValueFromAny(pAny).getStr() );
-	//-----IAccessibility2 Implementation 2009
 		break;
     default:
         break;
diff --git a/main/writerfilter/source/dmapper/PropertyMap.cxx b/main/writerfilter/source/dmapper/PropertyMap.cxx
index f60969f..a058fc9 100644
--- a/main/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/main/writerfilter/source/dmapper/PropertyMap.cxx
@@ -363,7 +363,7 @@
     for( sal_Int32 nStyle = 0; nStyle < rPageStyleNames.getLength(); ++nStyle)
     {
         if( pStyleNames[nStyle].getLength() > nDefaultLength &&
-                !rtl_ustr_compare_WithLength( sDefaultStyle, nDefaultLength, pStyleNames[nStyle], nDefaultLength))
+                !rtl_ustr_compare_WithLength( sDefaultStyle.getStr(), nDefaultLength, pStyleNames[nStyle].getStr(), nDefaultLength))
         {
             sal_Int32 nIndex = pStyleNames[nStyle].copy( nDefaultLength ).toInt32();
             if( nIndex > nMaxIndex)
diff --git a/main/xmloff/source/core/DocumentSettingsContext.cxx b/main/xmloff/source/core/DocumentSettingsContext.cxx
index c3a557c..30d36c8 100644
--- a/main/xmloff/source/core/DocumentSettingsContext.cxx
+++ b/main/xmloff/source/core/DocumentSettingsContext.cxx
@@ -600,7 +600,7 @@
 		if( sTrimmedChars.getLength() )
 		{
 			rtl::OUString sChars;
-			if( msValue )
+			if( !msValue.isEmpty() )
 			{
 				sChars = msValue;
 				sChars += sTrimmedChars;
diff --git a/main/xmloff/source/core/XMLBase64ImportContext.cxx b/main/xmloff/source/core/XMLBase64ImportContext.cxx
index da08f13..21a001d 100644
--- a/main/xmloff/source/core/XMLBase64ImportContext.cxx
+++ b/main/xmloff/source/core/XMLBase64ImportContext.cxx
@@ -65,7 +65,7 @@
 	if( sTrimmedChars.getLength() )
 	{
 		OUString sChars;
-		if( sBase64CharsLeft )
+		if( !sBase64CharsLeft.isEmpty() )
 		{
 			sChars = sBase64CharsLeft;
 			sChars += sTrimmedChars;
diff --git a/main/xmloff/source/draw/ximpstyl.cxx b/main/xmloff/source/draw/ximpstyl.cxx
index 5d87f1c..aab8b90 100644
--- a/main/xmloff/source/draw/ximpstyl.cxx
+++ b/main/xmloff/source/draw/ximpstyl.cxx
@@ -1306,7 +1306,7 @@
 //
 void SdXMLStylesContext::SetMasterPageStyles(SdXMLMasterPageContext& rMaster) const
 {
-	UniString sPrefix(rMaster.GetDisplayName(), (sal_uInt16)rMaster.GetDisplayName().getLength());
+	UniString sPrefix( rMaster.GetDisplayName());
 	sPrefix += sal_Unicode('-');
 
 	if(GetSdImport().GetLocalDocStyleFamilies().is() && GetSdImport().GetLocalDocStyleFamilies()->hasByName(rMaster.GetDisplayName())) try
diff --git a/main/xmloff/source/text/XMLTextFrameContext.cxx b/main/xmloff/source/text/XMLTextFrameContext.cxx
index a4830fd..05043aa 100644
--- a/main/xmloff/source/text/XMLTextFrameContext.cxx
+++ b/main/xmloff/source/text/XMLTextFrameContext.cxx
@@ -1247,7 +1247,7 @@
 			if( bOwnBase64Stream && xBase64Stream.is() )
 			{
 				OUString sChars;
-				if( sBase64CharsLeft )
+				if( !sBase64CharsLeft.isEmpty() )
 				{
 					sChars = sBase64CharsLeft;
 					sChars += sTrimmedChars;
diff --git a/main/xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.cxx b/main/xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.cxx
index 3bb8adf..c1b7eea 100644
--- a/main/xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.cxx
+++ b/main/xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.cxx
@@ -62,7 +62,7 @@
 	//Initialize the crypto engine
 	if( sCertDB.getLength() > 0 ) 
 	{
-		rtl::OString sCertDir(sCertDB, sCertDB.getLength(), RTL_TEXTENCODING_ASCII_US);
+		rtl::OString sCertDir( OUStringToOString( sCertDB, RTL_TEXTENCODING_ASCII_US));
 		n_pCertStore = sCertDir.getStr();
 		n_hStoreHandle = CertOpenSystemStore( NULL, n_pCertStore ) ;
 		if( n_hStoreHandle == NULL )