diff --git a/editeng/inc/editeng/flditem.hxx b/editeng/inc/editeng/flditem.hxx
index 1ced8ec..ed4199e 100644
--- a/editeng/inc/editeng/flditem.hxx
+++ b/editeng/inc/editeng/flditem.hxx
@@ -189,6 +189,21 @@ public:
     virtual MetaAction* createBeginComment() const;
 };
 
+class EDITENG_DLLPUBLIC SvxSlideNameField : public SvxFieldData
+{
+private:
+     rtl::OUString   aSlideNameImpress;
+public:
+    SV_DECL_PERSIST1( SvxSlideNameField, SvxFieldData, com::sun::star::text::textfield::Type::SLIDE_NAME )
+    SvxSlideNameField();    
+    
+    const rtl::OUString&    GetSlideName() const { return aSlideNameImpress; }
+    void   SetSlideName( const rtl::OUString& rSlideName ){ aSlideNameImpress=rSlideName; }
+
+    virtual SvxFieldData*   Clone() const;
+
+};
+
 class EDITENG_DLLPUBLIC SvxPagesField : public SvxFieldData
 {
 public:
diff --git a/editeng/inc/editeng/unonames.hxx b/editeng/inc/editeng/unonames.hxx
index 9db7745..ae12608 100644
--- a/editeng/inc/editeng/unonames.hxx
+++ b/editeng/inc/editeng/unonames.hxx
@@ -49,6 +49,9 @@
 // File
 #define UNO_TC_PROP_FILE_FORMAT "FileFormat"
 
+//SlideName
+ #define UNO_TC_PROP_SLIDE_NAME "SlideName"
+ 
 // Author
 #define UNO_TC_PROP_AUTHOR_CONTENT  "Content"
 #define UNO_TC_PROP_AUTHOR_FORMAT   "AuthorFormat"
diff --git a/editeng/source/items/flditem.cxx b/editeng/source/items/flditem.cxx
index 1c0a2c1..7448b4a 100644
--- a/editeng/source/items/flditem.cxx
+++ b/editeng/source/items/flditem.cxx
@@ -109,6 +109,11 @@ SvxFieldData* SvxFieldData::Create(const uno::Reference<text::XTextContent>& xTe
         }
         case text::textfield::Type::PAGE:
             return new SvxPageField();
+        case text::textfield::Type::SLIDE_NAME:
+        {   rtl::OUString aSlideName; 
+            xPropSet->getPropertyValue(UNO_TC_PROP_SLIDE_NAME) >>= aSlideName;
+            return new SvxSlideNameField();
+        }        
         case text::textfield::Type::PAGES:
             return new SvxPagesField();
         case text::textfield::Type::DOCINFO_TITLE:
@@ -628,6 +633,22 @@ MetaAction* SvxPageField::createBeginComment() const
     return new MetaCommentAction( "FIELD_SEQ_BEGIN;PageField" );
 }
 
+SV_IMPL_PERSIST1( SvxSlideNameField, SvxFieldData );
+
+SvxSlideNameField::SvxSlideNameField(){} 
+
+SvxFieldData* SvxSlideNameField::Clone() const
+{
+     return new SvxSlideNameField;   
+}
+
+void SvxSlideNameField::Load( SvPersistStream & /*rStm*/ )
+{
+}
+
+void SvxSlideNameField::Save( SvPersistStream & /*rStm*/ )
+{
+}
 
 SV_IMPL_PERSIST1( SvxPagesField, SvxFieldData );
 
@@ -1151,6 +1172,7 @@ SvClassManager& SvxFieldItem::GetClassManager()
         pClassMgr->Register(SvxURLField::StaticClassId(),     SvxURLField::CreateInstance);
         pClassMgr->Register(SvxDateField::StaticClassId(),    SvxDateField::CreateInstance);
         pClassMgr->Register(SvxPageField::StaticClassId(),    SvxPageField::CreateInstance);
+        pClassMgr->Register(SvxSlideNameField::StaticClassId(),    SvxSlideNameField::CreateInstance);
         pClassMgr->Register(SvxTimeField::StaticClassId(),    SvxTimeField::CreateInstance);
         pClassMgr->Register(SvxExtTimeField::StaticClassId(), SvxExtTimeField::CreateInstance);
         pClassMgr->Register(SvxExtFileField::StaticClassId(), SvxExtFileField::CreateInstance);
diff --git a/editeng/source/uno/unofield.cxx b/editeng/source/uno/unofield.cxx
index b33da6b..1e65d3b 100644
--- a/editeng/source/uno/unofield.cxx
+++ b/editeng/source/uno/unofield.cxx
@@ -133,8 +133,18 @@ const SfxItemPropertySet* ImplGetFieldItemPropertySet( sal_Int32 mnId )
         { MAP_CHAR_LEN(UNO_TC_PROP_MEASURE_KIND), WID_INT16,  &::getCppuType((const sal_Int16*)0), 0, 0 },
         {0,0,0,0,0,0}
     };
+
     static SfxItemPropertySet aMeasureFieldPropertySet_Impl(aMeasureFieldPropertyMap_Impl);
 
+    static SfxItemPropertyMapEntry aSlideNameFieldPropertyMap_Impl[] =
+    {
+        { MAP_CHAR_LEN(UNO_TC_PROP_SLIDE_NAME), WID_STRING1,  &::getCppuType((const OUString*)0), 0, 0 },
+        {0,0,0,0,0,0}
+    };
+
+    static SfxItemPropertySet aSlideNameFieldPropertySet_Impl(aSlideNameFieldPropertyMap_Impl);
+
+ 
     switch( mnId )
     {
     case text::textfield::Type::EXTENDED_TIME:
@@ -150,6 +160,8 @@ const SfxItemPropertySet* ImplGetFieldItemPropertySet( sal_Int32 mnId )
         return &aAuthorFieldPropertySet_Impl;
     case text::textfield::Type::MEASURE:
         return &aMeasureFieldPropertySet_Impl;
+    case text::textfield::Type::SLIDE_NAME:
+        return &aSlideNameFieldPropertySet_Impl;        
     default:
         return &aEmptyPropertySet_Impl;
     }
@@ -370,6 +382,10 @@ SvxUnoTextField::SvxUnoTextField( uno::Reference< text::XTextRange > xAnchor, co
             case text::textfield::Type::MEASURE:
                 mpImpl->mnInt16     = sal::static_int_cast< sal_Int16 >(((SdrMeasureField*)pData)->GetMeasureFieldKind());
                 break;
+             
+             case text::textfield::Type::SLIDE_NAME:
+                mpImpl->msString1  = ((SvxSlideNameField*)pData)->GetSlideName();
+                break;
             }
         }
     }
@@ -428,6 +444,10 @@ SvxFieldData* SvxUnoTextField::CreateFieldData() const throw()
     case text::textfield::Type::PAGE:
         pData = new SvxPageField();
         break;
+        
+    case text::textfield::Type::SLIDE_NAME:
+        pData = new SvxSlideNameField();
+        break;
 
     case text::textfield::Type::PAGES:
         pData = new SvxPagesField();
@@ -595,6 +615,9 @@ OUString SAL_CALL SvxUnoTextField::getPresentation( sal_Bool bShowCommand )
                 return OUString("URL");
             case text::textfield::Type::PAGE:
                 return OUString("Page");
+                // return OUString("Slide");
+            case text::textfield::Type::SLIDE_NAME:
+                return OUString("Slide");
             case text::textfield::Type::PAGES:
                 return OUString("Pages");
             case text::textfield::Type::TIME:
@@ -820,6 +843,12 @@ uno::Sequence< OUString > SAL_CALL SvxUnoTextField::getSupportedServiceNames()
             pServices[2] = "com.sun.star.text.TextField.PageNumber";
             pServices[3] = "com.sun.star.text.textfield.PageNumber";
         break;
+        case text::textfield::Type::SLIDE_NAME:
+            pServices[2] = "com.sun.star.text.TextField.PageNumber";
+            pServices[3] = "com.sun.star.text.textfield.PageNumber";
+            // pServices[2] = "com.sun.star.text.TextField.SlideName";
+            // pServices[3] = "com.sun.star.text.textfield.SlideName";
+        break;
         case text::textfield::Type::PAGES:
             pServices[2] = "com.sun.star.text.TextField.PageCount";
             pServices[3] = "com.sun.star.text.textfield.PageCount";
@@ -903,8 +932,13 @@ uno::Reference< uno::XInterface > SAL_CALL SvxUnoTextCreateTextField( const ::rt
         }
         else if ( aFieldType == "PageNumber" )
         {
-            nId = text::textfield::Type::PAGE;
+            // nId = text::textfield::Type::PAGE;
+            nId = text::textfield::Type::SLIDE_NAME;
         }
+        // else if ( aFieldType == "SlideName" )
+        // {
+        //     // nId = text::textfield::Type::SLIDE_NAME;
+        // }        
         else if ( aFieldType == "PageCount" )
         {
             nId = text::textfield::Type::PAGES;
diff --git a/offapi/com/sun/star/text/textfield/Type.idl b/offapi/com/sun/star/text/textfield/Type.idl
index 082a65a..b873d96 100644
--- a/offapi/com/sun/star/text/textfield/Type.idl
+++ b/offapi/com/sun/star/text/textfield/Type.idl
@@ -55,12 +55,13 @@ constants Type
     const long EXTENDED_FILE = 7;
     const long AUTHOR        = 8;
     const long MEASURE       = 9;
-
+    
     const long DOCINFO_TITLE = 10;
 
     const long PRESENTATION_HEADER    = 11;
     const long PRESENTATION_FOOTER    = 12;
     const long PRESENTATION_DATE_TIME = 13;
+    const long SLIDE_NAME=14;
 };
 
 }; }; }; }; };
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
index d52bafc..c3a7045 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
@@ -537,6 +537,12 @@
           <value xml:lang="en-US">~Page Number</value>
         </prop>
       </node>
+      <node oor:name=".uno:InsertSlideField" oor:op="replace">
+        <prop oor:name="Label" oor:type="xs:string">
+
+          <value xml:lang="en-US">~Slide Name</value>
+        </prop>
+      </node>
       <node oor:name=".uno:InsertPagesField" oor:op="replace">
         <prop oor:name="Label" oor:type="xs:string">
 
@@ -733,7 +739,7 @@
         </prop>
         <prop oor:name="Properties" oor:type="xs:int">
           <value>1</value>
-        </prop>
+        </prop>        
       </node>
       <node oor:name=".uno:ZoomPanning" oor:op="replace">
         <prop oor:name="Label" oor:type="xs:string">
diff --git a/scripting/workben/bindings/impressmenubar.xml b/scripting/workben/bindings/impressmenubar.xml
index a76991d..824fcca 100644
--- a/scripting/workben/bindings/impressmenubar.xml
+++ b/scripting/workben/bindings/impressmenubar.xml
@@ -187,6 +187,7 @@
      <menu:menuseparator/>
      <menu:menuitem menu:id="slot:27364" menu:helpid="27364" menu:label="~Author"/>
      <menu:menuitem menu:id="slot:27361" menu:helpid="27361" menu:label="~Page Number"/>
+     <menu:menuitem menu:id="slot:27383" menu:helpid="27383" menu:label="~Slide Name"/>
      <menu:menuitem menu:id="slot:27363" menu:helpid="27363" menu:label="~File Name"/>
     </menu:menupopup>
    </menu:menu>
diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc
index 950a930..f79f094 100644
--- a/sd/inc/app.hrc
+++ b/sd/inc/app.hrc
@@ -377,6 +377,7 @@
 #define SID_INSERT_FLD_TIME_VAR             (SID_SD_START+359)
 #define SID_INSERT_FLD_TIME_FIX             (SID_SD_START+360)
 #define SID_INSERT_FLD_PAGE                 (SID_SD_START+361)
+#define SID_INSERT_FLD_SLIDE                (SID_SD_START+383)
 #define SID_MODIFY_FIELD                    (SID_SD_START+362)
 #define SID_INSERT_FLD_FILE                 (SID_SD_START+363)
 #define SID_INSERT_FLD_AUTHOR               (SID_SD_START+364)
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
index 98f1539..cb9e00c 100644
--- a/sd/sdi/_drvwsh.sdi
+++ b/sd/sdi/_drvwsh.sdi
@@ -2089,6 +2089,11 @@ interface DrawView
         ExecMethod = FuTemporary ;
         StateMethod = GetMenuState ;
     ]
+    SID_INSERT_FLD_SLIDE // ole : no, status : play rec
+    [
+        ExecMethod = FuTemporary ;
+        StateMethod = GetMenuState ;
+    ] 
     SID_INSERT_FLD_PAGES // ole : no, status : play rec
     [
         ExecMethod = FuTemporary ;
diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi
index d59d62d..0f5de06 100644
--- a/sd/sdi/sdraw.sdi
+++ b/sd/sdi/sdraw.sdi
@@ -3494,6 +3494,31 @@ SfxVoidItem InsertPageField SID_INSERT_FLD_PAGE
 ]
 
 //--------------------------------------------------------------------------
+SfxVoidItem InsertSlideField SID_INSERT_FLD_SLIDE
+()
+[
+    /* flags: */
+    AutoUpdate = FALSE,
+    Cachable = Cachable,
+    FastCall = FALSE,
+    HasCoreId = FALSE,
+    HasDialog = FALSE,
+    ReadOnlyDoc = FALSE,
+    Toggle = FALSE,
+    Container = FALSE,
+    RecordAbsolute = FALSE,
+    RecordPerSet;
+    Synchron;
+
+    /* config: */
+    AccelConfig = TRUE,
+    MenuConfig = TRUE,
+    StatusBarConfig = FALSE,
+    ToolBoxConfig = TRUE,
+    GroupId = GID_INSERT;
+]
+
+//--------------------------------------------------------------------------
 SfxVoidItem InsertPagesField SID_INSERT_FLD_PAGES
 ()
 [
diff --git a/sd/source/ui/app/sdmod2.cxx b/sd/source/ui/app/sdmod2.cxx
index 7e25077..05bef3e 100644
--- a/sd/source/ui/app/sdmod2.cxx
+++ b/sd/source/ui/app/sdmod2.cxx
@@ -176,6 +176,7 @@ IMPL_LINK(SdModule, CalcFieldValueHdl, EditFieldInfo*, pInfo)
         const SvxExtFileField* pExtFileField = 0;
         const SvxAuthorField* pAuthorField = 0;
         const SvxURLField* pURLField = 0;
+        const SvxSlideNameField* pSlideNameField = 0;
 
         if( (pDateField = dynamic_cast< const SvxDateField* >(pField)) != 0 )
         {
@@ -216,6 +217,57 @@ IMPL_LINK(SdModule, CalcFieldValueHdl, EditFieldInfo*, pInfo)
             pInfo->SetRepresentation( pAuthorField->GetFormatted() );
 
         }
+        else if( (pSlideNameField = dynamic_cast< const SvxSlideNameField*  >(pField))!= 0 )
+        {
+            String aRepresentation;
+            aRepresentation += sal_Unicode( ' ' );
+
+            ::sd::DrawViewShell* pDrSh=NULL;
+            ::sd::ViewShell* pViewSh = pDocShell ? pDocShell->GetViewShell() : NULL;
+            if(pViewSh == NULL)
+            {
+                ::sd::ViewShellBase* pBase = PTR_CAST(::sd::ViewShellBase, SfxViewShell::Current());
+                if(pBase)
+                    pViewSh = pBase->GetMainViewShell().get();
+            }
+            if( !pDoc && pViewSh )
+                pDoc = pViewSh->GetDoc();
+
+            bool bMasterView;
+            SdPage* pPage = GetCurrentPage( pViewSh, pInfo, bMasterView );
+            pDrSh = dynamic_cast< ::sd::DrawViewShell* >( pViewSh );
+            
+            if( pPage && pDoc && !bMasterView )
+            {   OUString slidename;
+                if( (pPage->GetPageKind() == PK_HANDOUT) && pViewSh )
+                {    
+                   slidename="";
+                }
+                else
+                {  
+                   if( (pDrSh->GetEditMode()) == EM_PAGE ) 
+                        {   
+                            sal_uInt16 nPageId = pDrSh->GetCurPageId();
+                            pPage= pDoc->GetSdPage( nPageId - 1, (pDrSh->GetPageKind()) );
+                            slidename=pPage->GetName();
+                        } 
+                   else
+                        {   
+                            sal_uInt16 nPageId = pDrSh->GetCurPageId();
+                            pPage= pDoc->GetMasterSdPage( nPageId - 1, (pDrSh->GetPageKind()) );
+                            slidename=pPage->GetName();                                
+                        } 
+                    
+                }
+                aRepresentation=slidename;
+                const_cast< SvxSlideNameField* >(pSlideNameField)->SetSlideName( aRepresentation); //the slide name value in svxslidenamefield class is set here
+            }
+            else
+                aRepresentation = SdResId(STR_FIELD_PLACEHOLDER_NAME).toString();
+                
+            pInfo->SetRepresentation( aRepresentation );
+        }
+
         else if( dynamic_cast< const SvxPageField*  >(pField) )
         {
             String aRepresentation;
@@ -253,6 +305,7 @@ IMPL_LINK(SdModule, CalcFieldValueHdl, EditFieldInfo*, pInfo)
 
             pInfo->SetRepresentation( aRepresentation );
         }
+
         else if( dynamic_cast< const SvxPagesField*  >(pField) )
         {
             String aRepresentation;
diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src
index ef4db83..77bff90 100644
--- a/sd/source/ui/app/strings.src
+++ b/sd/source/ui/app/strings.src
@@ -1123,6 +1123,11 @@ String STR_FIELD_PLACEHOLDER_COUNT
     Text [ en-US ]="<count>" ;
 };
 
+String STR_FIELD_PLACEHOLDER_NAME
+{
+    Text [ en-US ]="<name>" ;
+};
+
 String STR_PLACEHOLDER_DESCRIPTION_NOTES
 {
     Text [ en-US ] = "Notes Area";
diff --git a/sd/source/ui/inc/strings.hrc b/sd/source/ui/inc/strings.hrc
index d9ab2c1..a307bd4 100644
--- a/sd/source/ui/inc/strings.hrc
+++ b/sd/source/ui/inc/strings.hrc
@@ -380,6 +380,7 @@
 
 #define STR_UNDO_HANGULHANJACONVERSION                  (RID_APP_START+696)
 #define STR_FIELD_PLACEHOLDER_COUNT             (RID_APP_START+697)
+#define STR_FIELD_PLACEHOLDER_NAME             (RID_APP_START+698)
 
 #define STR_LEFT_PANE_DRAW_TITLE                        (RID_APP_START+700)
 #define STR_LEFT_PANE_IMPRESS_TITLE                     (RID_APP_START+701)
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index af1eb65..ab9f3aa 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -1048,6 +1048,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
         rSet.DisableItem( SID_INSERT_FLD_TIME_VAR );
         rSet.DisableItem( SID_INSERT_FLD_AUTHOR );
         rSet.DisableItem( SID_INSERT_FLD_PAGE );
+        rSet.DisableItem( SID_INSERT_FLD_SLIDE );
         rSet.DisableItem( SID_INSERT_FLD_PAGES );
         rSet.DisableItem( SID_INSERT_FLD_FILE );
 
diff --git a/sd/source/ui/view/drviewsb.cxx b/sd/source/ui/view/drviewsb.cxx
index 87e3d1c..d221a78 100644
--- a/sd/source/ui/view/drviewsb.cxx
+++ b/sd/source/ui/view/drviewsb.cxx
@@ -482,6 +482,7 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
         case SID_INSERT_FLD_TIME_VAR:
         case SID_INSERT_FLD_AUTHOR:
         case SID_INSERT_FLD_PAGE:
+        case SID_INSERT_FLD_SLIDE:
         case SID_INSERT_FLD_PAGES:
         case SID_INSERT_FLD_FILE:
         {
@@ -523,6 +524,12 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
                     nMul = 3;
                 }
                 break;
+                
+                case SID_INSERT_FLD_SLIDE:
+                { 
+                    pFieldItem = new SvxFieldItem(SvxSlideNameField() , EE_FEATURE_FIELD);
+                }
+                break;
 
                 case SID_INSERT_FLD_PAGES:
                 {
@@ -553,7 +560,8 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
                                     pOldFldItem->GetField()->ISA( SvxExtTimeField ) ||
                                     pOldFldItem->GetField()->ISA( SvxExtFileField ) ||
                                     pOldFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxPageField ) ) )
+                                    pOldFldItem->GetField()->ISA( SvxPageField )||
+                                    pOldFldItem->GetField()->ISA( SvxSlideNameField) ) )
                 {
                     // Feld selektieren, so dass es beim Insert geloescht wird
                     ESelection aSel = pOLV->GetSelection();
diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml
index 9fd07b1..8b3b1ca 100644
--- a/sd/uiconfig/simpress/menubar/menubar.xml
+++ b/sd/uiconfig/simpress/menubar/menubar.xml
@@ -171,6 +171,7 @@
                     <menu:menuseparator/>
                     <menu:menuitem menu:id=".uno:InsertAuthorField"/>
                     <menu:menuitem menu:id=".uno:InsertPageField"/>
+		    <menu:menuitem menu:id=".uno:InsertSlideField"/>
           <menu:menuitem menu:id=".uno:InsertPagesField"/>
           <menu:menuitem menu:id=".uno:InsertFileField"/>
                 </menu:menupopup>
