Author: zhengfan
Date: Tue Apr  2 15:47:46 2013
New Revision: 1463604

URL: http://svn.apache.org/r1463604
Log:
i121794: For fix issues paragraph properties panel, for sidebar panel. by 
ZhengFan.

Modified:
    openoffice/branches/sidebar/main/sd/sdi/_drvwsh.sdi
    openoffice/branches/sidebar/main/sd/source/core/typemap.cxx
    openoffice/branches/sidebar/main/sd/source/ui/inc/DrawViewShell.hxx
    openoffice/branches/sidebar/main/sd/source/ui/view/drviews2.cxx
    openoffice/branches/sidebar/main/sd/source/ui/view/drviews3.cxx
    openoffice/branches/sidebar/main/sd/source/ui/view/drviews8.cxx
    openoffice/branches/sidebar/main/sd/source/ui/view/drviewsf.cxx
    openoffice/branches/sidebar/main/svx/inc/svx/nbdtmg.hxx
    openoffice/branches/sidebar/main/svx/inc/svx/nbdtmgfact.hxx
    openoffice/branches/sidebar/main/svx/sdi/svx.sdi
    openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmg.cxx
    openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmgfact.cxx
    
openoffice/branches/sidebar/main/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
    openoffice/branches/sidebar/main/sw/inc/editsh.hxx
    openoffice/branches/sidebar/main/sw/sdi/_textsh.sdi
    openoffice/branches/sidebar/main/sw/source/core/edit/ednumber.cxx
    openoffice/branches/sidebar/main/sw/source/ui/shells/frmsh.cxx
    openoffice/branches/sidebar/main/sw/source/ui/shells/textsh1.cxx
    openoffice/branches/sidebar/main/sw/source/ui/shells/txtnum.cxx
    openoffice/branches/sidebar/main/sw/source/ui/utlui/navipi.cxx

Modified: openoffice/branches/sidebar/main/sd/sdi/_drvwsh.sdi
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/sdi/_drvwsh.sdi?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/sdi/_drvwsh.sdi (original)
+++ openoffice/branches/sidebar/main/sd/sdi/_drvwsh.sdi Tue Apr  2 15:47:46 2013
@@ -699,6 +699,16 @@ interface DrawView
         ExecMethod = FuTemporary ;
         StateMethod = GetMenuState ;
     ]
+    FN_NUM_BULLET_ON
+    [
+        ExecMethod = FuTemporary;
+        StateMethod = GetAttrState;
+    ]
+    FN_NUM_NUMBERING_ON
+    [
+        ExecMethod = FuTemporary;
+        StateMethod = GetAttrState;
+    ]
     SID_OUTLINE_BULLET // ole : no, status : ?
     [
         ExecMethod = FuTemporary ;
@@ -713,6 +723,18 @@ interface DrawView
     [
        ExecMethod = FuTemporary ;
     ]
+    FN_BUL_NUM_RULE_INDEX
+    [
+        ExecMethod = FuTemporary;
+        StateMethod = GetAttrState;
+        Asynchron , Volatile , AutoUpdate ;
+    ]
+    FN_NUM_NUM_RULE_INDEX
+    [
+        ExecMethod = FuTemporary;
+        StateMethod = GetAttrState;
+        Asynchron , Volatile , AutoUpdate ;
+    ]
     SID_ATTR_CHAR // ole : no, status : ?
     [
         ExecMethod = FuPermanent ;
@@ -2632,4 +2654,74 @@ interface DrawView
         ExecMethod = FuTable ;
         StateMethod = GetTableMenuState ;
     ]
+    SID_ATTR_CHAR_FONT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_FONTHEIGHT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_WEIGHT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_POSTURE
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_UNDERLINE
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_SHADOWED
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_STRIKEOUT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_COLOR
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_ATTR_CHAR_KERNING
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_SET_SUB_SCRIPT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_SET_SUPER_SCRIPT
+    [
+        ExecMethod = ExecChar ;
+        StateMethod = GetAttrState ;
+    ]
+    SID_TABLE_VERT_NONE
+    [
+        ExecMethod = ExecutePropPanelAttr ;
+        StateMethod = GetStatePropPanelAttr ;          
+    ]
+    SID_TABLE_VERT_CENTER
+    [
+        ExecMethod = ExecutePropPanelAttr ;
+        StateMethod = GetStatePropPanelAttr ;  
+    ]
+    SID_TABLE_VERT_BOTTOM
+    [
+        ExecMethod = ExecutePropPanelAttr ;
+        StateMethod = GetStatePropPanelAttr ;  
+    ]
 }

Modified: openoffice/branches/sidebar/main/sd/source/core/typemap.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/core/typemap.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/core/typemap.cxx (original)
+++ openoffice/branches/sidebar/main/sd/source/core/typemap.cxx Tue Apr  2 
15:47:46 2013
@@ -38,6 +38,7 @@
 #include <editeng/fontitem.hxx>
 #include <svl/poolitem.hxx>
 #include <editeng/tstpitem.hxx>
+#include <editeng/kernitem.hxx>
 #include <editeng/lspcitem.hxx>
 #include <editeng/ulspitem.hxx>
 #include <editeng/lrspitem.hxx>

Modified: openoffice/branches/sidebar/main/sd/source/ui/inc/DrawViewShell.hxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/ui/inc/DrawViewShell.hxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/ui/inc/DrawViewShell.hxx 
(original)
+++ openoffice/branches/sidebar/main/sd/source/ui/inc/DrawViewShell.hxx Tue Apr 
 2 15:47:46 2013
@@ -199,6 +199,9 @@ public:
        void            ExecNavigatorWin(SfxRequest& rReq);
        void            GetNavigatorWinState(SfxItemSet& rSet);
 
+       void         ExecutePropPanelAttr (SfxRequest& rReq);
+       void            GetStatePropPanelAttr(SfxItemSet& rSet);
+
        void            ExecEffectWin(SfxRequest& rReq);
 
        void            Update3DWindow();
@@ -221,6 +224,8 @@ public:
        void            AttrExec (SfxRequest& rReq);
        void            AttrState (SfxItemSet& rSet);
 
+       void            ExecChar(SfxRequest& rReq);
+
     void            ExecuteAnnotation (SfxRequest& rRequest);
     void            GetAnnotationState (SfxItemSet& rItemSet);
 

Modified: openoffice/branches/sidebar/main/sd/source/ui/view/drviews2.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/ui/view/drviews2.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/ui/view/drviews2.cxx (original)
+++ openoffice/branches/sidebar/main/sd/source/ui/view/drviews2.cxx Tue Apr  2 
15:47:46 2013
@@ -63,6 +63,26 @@
 #include <svx/xlnedwit.hxx>
 #include <svx/fontworkbar.hxx>
 
+#include <editeng/escpitem.hxx>
+#include <editeng/kernitem.hxx>
+#include <editeng/wghtitem.hxx>
+#include <editeng/postitem.hxx>
+#include <editeng/udlnitem.hxx>
+#include <editeng/crsditem.hxx>
+#include <editeng/cntritem.hxx>
+#include <editeng/shdditem.hxx>
+#include <svx/xtable.hxx>
+#include <svx/svdobj.hxx>
+#include <editeng/outlobj.hxx>
+#include <editeng/flstitem.hxx>
+#include <editeng/scripttypeitem.hxx>
+#include <editeng/fontitem.hxx>
+#include <editeng/fhgtitem.hxx>
+#include <editeng/colritem.hxx>
+#include <editeng/brshitem.hxx>
+
+#include <svl/whiter.hxx>
+
 #include <svx/svxdlg.hxx>
 #include <svx/dialogs.hrc>
 
@@ -997,7 +1017,164 @@ void DrawViewShell::FuTemporary(SfxReque
        }
 }
 
+void DrawViewShell::ExecChar( SfxRequest &rReq )
+{
+       SdDrawDocument* pDoc = GetDoc();
+       if (!pDoc || !mpDrawView)
+       return; 
+
+       SfxItemSet aEditAttr( pDoc->GetPool() );
+       mpDrawView->GetAttributes( aEditAttr );
+
+       //modified by wj for sym2_1580, if put old itemset into new set,
+       //when mpDrawView->SetAttributes(aNewAttr) it will invalidate all the 
item
+       // and use old attr to update all the attributes
+//     SfxItemSet aNewAttr( GetPool(),
+//     EE_ITEMS_START, EE_ITEMS_END );
+//     aNewAttr.Put( aEditAttr, sal_False );
+       SfxItemSet aNewAttr( pDoc->GetPool() );
+       //modified end
+
+       sal_uInt16 nSId = rReq.GetSlot();
+
+       MapSlot( nSId );
+
+       switch ( nSId )
+       {
+       case SID_ATTR_CHAR_FONT:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxFontItem, 
SID_ATTR_CHAR_FONT , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_FONTHEIGHT:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxFontHeightItem, 
SID_ATTR_CHAR_FONTHEIGHT , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_WEIGHT:     
+               if( rReq.GetArgs() )
+               {
+                       //const SvxWeightItem *pItem = (const SvxWeightItem*) 
rReq.GetArg( SID_ATTR_CHAR_WEIGHT, sal_False, TYPE(SvxWeightItem) );
+                       SFX_REQUEST_ARG( rReq, pItem, SvxWeightItem, 
SID_ATTR_CHAR_WEIGHT , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;  
+       case SID_ATTR_CHAR_POSTURE:
+               if( rReq.GetArgs() )
+               {
+                       //const SvxPostureItem *pItem = (const SvxPostureItem*) 
rReq.GetArg( SID_ATTR_CHAR_POSTURE, sal_False, TYPE(SvxPostureItem) );
+                       SFX_REQUEST_ARG( rReq, pItem, SvxPostureItem, 
SID_ATTR_CHAR_POSTURE , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_UNDERLINE:
+               if( rReq.GetArgs() )
+               {
+                       //<<modify by wj for sym2_1873
+                       //SFX_REQUEST_ARG( rReq, pItem, SvxTextLineItem, 
SID_ATTR_CHAR_UNDERLINE , sal_False );
+                       SFX_REQUEST_ARG( rReq, pItem, SvxUnderlineItem, 
SID_ATTR_CHAR_UNDERLINE , sal_False );
+                       //end>>
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+                       else
+                       {
+                               FontUnderline eFU = ( (const SvxUnderlineItem&) 
aEditAttr.Get( EE_CHAR_UNDERLINE ) ).GetLineStyle();
+                               aNewAttr.Put( SvxUnderlineItem( eFU != 
UNDERLINE_NONE ?UNDERLINE_NONE : UNDERLINE_SINGLE,  EE_CHAR_UNDERLINE ) );
+                       }//aNewAttr.Put( (const 
SvxUnderlineItem&)aEditAttr.Get( EE_CHAR_UNDERLINE ) );
+               }
+               break;
+       case SID_ATTR_CHAR_SHADOWED:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxShadowedItem, 
SID_ATTR_CHAR_SHADOWED , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_STRIKEOUT:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxCrossedOutItem, 
SID_ATTR_CHAR_STRIKEOUT , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_COLOR:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxColorItem, 
SID_ATTR_CHAR_COLOR , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_ATTR_CHAR_KERNING:
+               if( rReq.GetArgs() )
+               {
+                       SFX_REQUEST_ARG( rReq, pItem, SvxKerningItem, 
SID_ATTR_CHAR_KERNING , sal_False );
+                       if (pItem)
+                       {
+                               aNewAttr.Put(*pItem);
+                       }
+               }
+               break;
+       case SID_SET_SUB_SCRIPT:
+               if( rReq.GetArgs() )
+               {
+                       SvxEscapementItem aItem( EE_CHAR_ESCAPEMENT );
+                       SvxEscapement eEsc = (SvxEscapement ) ( (const 
SvxEscapementItem&)
+                                                       aEditAttr.Get( 
EE_CHAR_ESCAPEMENT ) ).GetEnumValue();
+                       if( eEsc == SVX_ESCAPEMENT_SUBSCRIPT )
+                               aItem.SetEscapement( SVX_ESCAPEMENT_OFF );
+                       else
+                               aItem.SetEscapement( SVX_ESCAPEMENT_SUBSCRIPT );
+                       aNewAttr.Put( aItem );
+               }
+               break;
+       case SID_SET_SUPER_SCRIPT:
+               if( rReq.GetArgs() )
+               {
+                       SvxEscapementItem aItem( EE_CHAR_ESCAPEMENT );
+                       SvxEscapement eEsc = (SvxEscapement ) ( (const 
SvxEscapementItem&)
+                                                       aEditAttr.Get( 
EE_CHAR_ESCAPEMENT ) ).GetEnumValue();
+                       if( eEsc == SVX_ESCAPEMENT_SUPERSCRIPT )
+                               aItem.SetEscapement( SVX_ESCAPEMENT_OFF );
+                       else
+                               aItem.SetEscapement( SVX_ESCAPEMENT_SUPERSCRIPT 
);
+                       aNewAttr.Put( aItem );
+               }
+               break;
+       default:
+               ;
+       }
 
+       mpDrawView->SetAttributes(aNewAttr);
+       rReq.Done();
+       Cancel();
+}
 
 
 /** This method consists basically of three parts:
@@ -1023,4 +1200,86 @@ SdPage* DrawViewShell::CreateOrDuplicate
     return pNewPage;
 }
 
+void DrawViewShell::ExecutePropPanelAttr (SfxRequest& rReq)
+{
+       if(SlideShow::IsRunning( GetViewShellBase() ))
+               return; 
+
+       SdDrawDocument* pDoc = GetDoc();
+       if (!pDoc || !mpDrawView)
+               return;
+
+       sal_uInt16 nSId = rReq.GetSlot();
+       SfxItemSet aAttrs( pDoc->GetPool() );
+
+       switch ( nSId )
+       {
+       case SID_TABLE_VERT_NONE:               
+       case SID_TABLE_VERT_CENTER:
+       case SID_TABLE_VERT_BOTTOM:
+               SdrTextVertAdjust eTVA = SDRTEXTVERTADJUST_TOP;
+               if (nSId == SID_TABLE_VERT_CENTER)
+                       eTVA = SDRTEXTVERTADJUST_CENTER;
+               else if (nSId == SID_TABLE_VERT_BOTTOM)
+                       eTVA = SDRTEXTVERTADJUST_BOTTOM;
+
+               aAttrs.Put( SdrTextVertAdjustItem(eTVA) );
+               mpDrawView->SetAttributes(aAttrs);
+
+               break;
+       }
+}
+
+void DrawViewShell::GetStatePropPanelAttr(SfxItemSet& rSet)
+{
+       SfxWhichIter    aIter( rSet );
+       sal_uInt16                      nWhich = aIter.FirstWhich();
+
+       SdDrawDocument* pDoc = GetDoc();
+       if (!pDoc || !mpDrawView)
+               return;
+
+       SfxItemSet aAttrs( pDoc->GetPool() );           
+       mpDrawView->GetAttributes( aAttrs );
+       
+       while ( nWhich )
+       {
+               sal_uInt16 nSlotId = SfxItemPool::IsWhich(nWhich)
+                       ? GetPool().GetSlotId(nWhich)
+                       : nWhich; 
+               switch ( nSlotId )
+               {
+                       case SID_TABLE_VERT_NONE:
+                       case SID_TABLE_VERT_CENTER:
+                       case SID_TABLE_VERT_BOTTOM:
+                               sal_Bool bContour = sal_False;
+                               SfxItemState eConState = aAttrs.GetItemState( 
SDRATTR_TEXT_CONTOURFRAME );
+                               if( eConState != SFX_ITEM_DONTCARE )
+                               {
+                                       bContour = ( ( const 
SdrTextContourFrameItem& )aAttrs.Get( SDRATTR_TEXT_CONTOURFRAME ) ).GetValue();
+                               }
+                               if (bContour) break;
+
+                               SfxItemState eVState = aAttrs.GetItemState( 
SDRATTR_TEXT_VERTADJUST );
+                               //SfxItemState eHState = aAttrs.GetItemState( 
SDRATTR_TEXT_HORZADJUST );
+
+                               //if(SFX_ITEM_DONTCARE != eVState && 
SFX_ITEM_DONTCARE != eHState)
+                               if(SFX_ITEM_DONTCARE != eVState)
+                               {                                       
+                                       SdrTextVertAdjust eTVA = 
(SdrTextVertAdjust)((const 
SdrTextVertAdjustItem&)aAttrs.Get(SDRATTR_TEXT_VERTADJUST)).GetValue();
+                                       sal_Bool bSet = nSlotId == 
SID_TABLE_VERT_NONE && eTVA == SDRTEXTVERTADJUST_TOP||
+                            nSlotId == SID_TABLE_VERT_CENTER && eTVA == 
SDRTEXTVERTADJUST_CENTER ||
+                            nSlotId == SID_TABLE_VERT_BOTTOM && eTVA == 
SDRTEXTVERTADJUST_BOTTOM;
+                                       rSet.Put(SfxBoolItem(nSlotId, bSet));
+                               }
+                               else 
+                               {
+                                       rSet.Put(SfxBoolItem(nSlotId, 
sal_False));
+                               }
+                               break;  
+               }
+               nWhich = aIter.NextWhich();
+       }       
+}
+
 } // end of namespace sd

Modified: openoffice/branches/sidebar/main/sd/source/ui/view/drviews3.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/ui/view/drviews3.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/ui/view/drviews3.cxx (original)
+++ openoffice/branches/sidebar/main/sd/source/ui/view/drviews3.cxx Tue Apr  2 
15:47:46 2013
@@ -711,24 +711,17 @@ void  DrawViewShell::ExecRuler(SfxReques
 
                case SID_ATTR_PARA_LRSPACE:
                {
-                       if( mpDrawView->IsTextEdit() )
-                       {
-                               sal_uInt16 nId = SID_ATTR_PARA_LRSPACE;
-                               const SvxLRSpaceItem& rItem = (const 
SvxLRSpaceItem&)
-                                                       pArgs->Get( nId );
+                       sal_uInt16 nSlot = SID_ATTR_PARA_LRSPACE;
+                       SvxLRSpaceItem aLRSpace = (const 
SvxLRSpaceItem&)pArgs->Get(
+                               GetPool().GetWhich(nSlot));
 
-                SfxItemSet aEditAttr( GetPool(), EE_PARA_LRSPACE, 
EE_PARA_LRSPACE );
+                       SfxItemSet aEditAttr( GetPool(), EE_PARA_LRSPACE, 
EE_PARA_LRSPACE );
+                       aLRSpace.SetWhich( EE_PARA_LRSPACE );
 
-                nId = EE_PARA_LRSPACE;
-                               SvxLRSpaceItem aLRSpaceItem( rItem.GetLeft(),
-                                               rItem.GetRight(), 
rItem.GetTxtLeft(),
-                                               rItem.GetTxtFirstLineOfst(), 
nId );
-                               aEditAttr.Put( aLRSpaceItem );
-                               mpDrawView->SetAttributes( aEditAttr );
+                       aEditAttr.Put( aLRSpace );
+                       mpDrawView->SetAttributes( aEditAttr );
 
-                               // #92557# Invalidate is missing here
-                               Invalidate(SID_ATTR_PARA_LRSPACE);
-                       }
+                       Invalidate(SID_ATTR_PARA_LRSPACE);
                        break;
                }
                case SID_ATTR_LRSPACE:

Modified: openoffice/branches/sidebar/main/sd/source/ui/view/drviews8.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/ui/view/drviews8.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/ui/view/drviews8.cxx (original)
+++ openoffice/branches/sidebar/main/sd/source/ui/view/drviews8.cxx Tue Apr  2 
15:47:46 2013
@@ -132,6 +132,20 @@ void DrawViewShell::FuTemp01(SfxRequest&
                        Cancel();
                }
                break;
+               case FN_NUM_BULLET_ON: 
+               {
+                       // The value (sal_uInt16)0xFFFF means set bullet on/off.
+                       SfxUInt16Item aItem(FN_SVX_SET_BULLET, 
(sal_uInt16)0xFFFF);
+                       GetViewFrame()->GetDispatcher()->Execute( 
FN_SVX_SET_BULLET, SFX_CALLMODE_RECORD, &aItem, 0L );
+               }
+               break;
+               case FN_NUM_NUMBERING_ON: 
+               {
+                       // The value (sal_uInt16)0xFFFF means set bullet on/off.
+                       SfxUInt16Item aItem(FN_SVX_SET_NUMBER, 
(sal_uInt16)0xFFFF);
+                       GetViewFrame()->GetDispatcher()->Execute( 
FN_SVX_SET_NUMBER, SFX_CALLMODE_RECORD, &aItem, 0L );
+               }
+               break;
 
                case SID_OUTLINE_BULLET:
                case FN_SVX_SET_BULLET:

Modified: openoffice/branches/sidebar/main/sd/source/ui/view/drviewsf.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sd/source/ui/view/drviewsf.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sd/source/ui/view/drviewsf.cxx (original)
+++ openoffice/branches/sidebar/main/sd/source/ui/view/drviewsf.cxx Tue Apr  2 
15:47:46 2013
@@ -506,6 +506,118 @@ void DrawViewShell::GetAttrState( SfxIte
                                }
                        }
                        break;
+                       case FN_BUL_NUM_RULE_INDEX:
+                       case FN_NUM_NUM_RULE_INDEX:
+                       {
+                               SfxItemSet aEditAttr( GetDoc()->GetPool() );
+                               mpDrawView->GetAttributes( aEditAttr );         
+
+                               SfxItemSet aNewAttr( GetPool(), EE_ITEMS_START, 
EE_ITEMS_END );
+                               aNewAttr.Put( aEditAttr, sal_False );
+
+
+                               sal_uInt16 nActNumLvl = (sal_uInt16)0xFFFF;     
+                               SvxNumRule* pNumRule = NULL;    
+                               const SfxPoolItem* pTmpItem=NULL;
+                               sal_uInt16 nNumItemId = SID_ATTR_NUMBERING_RULE;
+
+                               //if(SFX_ITEM_SET == 
aNewAttr.GetItemState(SID_PARAM_CUR_NUM_LEVEL, sal_False, &pTmpItem))
+                               //      nActNumLvl = ((const 
SfxUInt16Item*)pTmpItem)->GetValue();
+                               
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,DEFAULT_NONE));
+                               
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,DEFAULT_NONE));
+                               nActNumLvl = mpDrawView->GetSelectionLevel();
+                               pTmpItem=GetNumBulletItem(aNewAttr, nNumItemId);
+
+                               if (pTmpItem)
+                                       pNumRule = new 
SvxNumRule(*((SvxNumBulletItem*)pTmpItem)->GetNumRule());
+                                       
+                               if ( pNumRule )
+                               {
+                                       sal_uInt16 nMask = 1;
+                                       sal_uInt16 nCount = 0;
+                                       sal_uInt16 nCurLevel = 
(sal_uInt16)0xFFFF;
+                                       for(sal_uInt16 i = 0; i < 
pNumRule->GetLevelCount(); i++)
+                                       {
+                                               if(nActNumLvl & nMask)
+                                               {
+                                                       nCount++;
+                                                       nCurLevel = i;
+                                               }
+                                               nMask <<= 1;
+                                       }
+                                       if ( nCount == 1 )
+                                       {
+                                               sal_Bool bBullets = sal_False;
+                                               const SvxNumberFormat* pNumFmt 
= pNumRule->Get(nCurLevel);
+                                               if ( pNumFmt )
+                                               {
+                                                       
switch(pNumFmt->GetNumberingType())
+                                                       {
+                                                               case 
SVX_NUM_CHAR_SPECIAL:
+                                                               case 
SVX_NUM_BITMAP:
+                                                                       
bBullets = sal_True;
+                                                                       break;
+
+                                                               default:
+                                                                       
bBullets = sal_False;
+                                                       }                       
                                
+
+                                                       
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                                       
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                                       if ( bBullets )
+                                                       {
+                                                               NBOTypeMgrBase* 
pBullets = NBOutlineTypeMgrFact::CreateInstance(eNBOType::MIXBULLETS);
+                                                               if ( pBullets )
+                                                               {
+                                                                       
sal_uInt16 nBulIndex = pBullets->GetNBOIndexForNumRule(*pNumRule,nActNumLvl);
+                                                                        
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,nBulIndex));
+                                                               }
+                                                       }else
+                                                       {
+                                                               NBOTypeMgrBase* 
pNumbering = NBOutlineTypeMgrFact::CreateInstance(eNBOType::NUMBERING);
+                                                               if ( pNumbering 
)
+                                                               {
+                                                                       
sal_uInt16 nBulIndex = pNumbering->GetNBOIndexForNumRule(*pNumRule,nActNumLvl);
+                                                                        
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,nBulIndex));
+                                                               }
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+                       break;
+                       //End
+                       // Added by Li Hui for story 179.
+                       case FN_NUM_BULLET_ON:
+                       case FN_NUM_NUMBERING_ON:
+                       {
+                               sal_Bool bEnable = sal_False;
+                               const SdrMarkList& rMarkList = 
mpDrawView->GetMarkedObjectList();
+                               const ULONG nMarkCount = 
rMarkList.GetMarkCount();
+                               for (ULONG nIndex = 0; nIndex < nMarkCount; 
nIndex++)
+                               {
+                                       SdrTextObj* pTextObj = dynamic_cast< 
SdrTextObj* >(rMarkList.GetMark(nIndex)->GetMarkedSdrObj());
+                                       if (pTextObj && 
pTextObj->GetObjInventor() == SdrInventor)
+                                       {
+                                               if 
(pTextObj->GetObjIdentifier() != OBJ_OLE2)
+                                               {
+                                                       bEnable = sal_True;
+                                                       break;
+                                               }
+                                       }
+                               }
+                               if (bEnable)
+                               {
+                                       rSet.Put(SfxBoolItem(FN_NUM_BULLET_ON, 
sal_False));
+                                       
rSet.Put(SfxBoolItem(FN_NUM_NUMBERING_ON, sal_False));
+                               }
+                               else
+                               {
+                                       rSet.DisableItem(FN_NUM_BULLET_ON);
+                                       rSet.DisableItem(FN_NUM_NUMBERING_ON);
+                               }
+                       }
+                       break;
                }
                nWhich = aIter.NextWhich();
        }

Modified: openoffice/branches/sidebar/main/svx/inc/svx/nbdtmg.hxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/inc/svx/nbdtmg.hxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/svx/inc/svx/nbdtmg.hxx (original)
+++ openoffice/branches/sidebar/main/svx/inc/svx/nbdtmg.hxx Tue Apr  2 15:47:46 
2013
@@ -1,45 +1,23 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+/**************************************************************
  * 
- * Copyright IBM Corporation 2009.
- * Copyright 2009. by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: nbdtmg.hxx,v $
- * $Revision: 1.00.00.0 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org.  If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-/***********************************************************************
- *
- *     Tool to Visualize Internal Data Structure for Productive Development
- *     It is a developer's tool from Lotus Symphony Documents Editor Team
- *
- *     This file provides developers of OpenOffice.org a visualize tool for 
tracing 
- *     the internal data structure and its parameters. 
- *
- *     Date: 05/25/2009
- *
- ***********************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
 
 #ifndef _NBDTMG_HXX
 #define _NBDTMG_HXX

Modified: openoffice/branches/sidebar/main/svx/inc/svx/nbdtmgfact.hxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/inc/svx/nbdtmgfact.hxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/svx/inc/svx/nbdtmgfact.hxx (original)
+++ openoffice/branches/sidebar/main/svx/inc/svx/nbdtmgfact.hxx Tue Apr  2 
15:47:46 2013
@@ -1,45 +1,23 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+/**************************************************************
  * 
- * Copyright IBM Corporation 2009.
- * Copyright 2009. by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: nbdtmgfact.hxx,v $
- * $Revision: 1.00.00.0 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org.  If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-/********************************************************************************
- *
- *     Tool to Visualize Internal Data Structure for Productive Development
- *     It is a developer's tool from Lotus Symphony Documents Editor Team
- *
- *     This file implements the base abstract exporter and 2 inherited 
sub-classes for 
- *     the internal data structure tracer. 
- *
- *     Date: 05/25/2009
- *
- 
********************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
 
 #ifndef _NBDTMGFACT_HXX
 #define _NBDTMGFACT_HXX

Modified: openoffice/branches/sidebar/main/svx/sdi/svx.sdi
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/sdi/svx.sdi?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/svx/sdi/svx.sdi (original)
+++ openoffice/branches/sidebar/main/svx/sdi/svx.sdi Tue Apr  2 15:47:46 2013
@@ -6430,6 +6430,63 @@ SfxVoidItem DefaultNumbering FN_NUM_NUMB
        GroupId = GID_ENUMERATION;
 ]
 
+SfxBoolItem CurrentBulNumRule FN_BUL_NUM_RULE_INDEX
+(SfxUInt16Item On FN_PARAM_1)
+[
+       /* flags: */
+       AutoUpdate = TRUE,
+       Cachable = Cachable,
+       FastCall = FALSE,
+       HasCoreId = FALSE,
+       HasDialog = FALSE,
+       ReadOnlyDoc = FALSE,
+       Toggle = TRUE,
+       Container = FALSE,
+       RecordAbsolute = FALSE,
+       RecordPerSet;
+       Synchron;
+
+       ImageRotation = TRUE;
+    ImageReflection = TRUE;
+    /* status: */
+       SlotType = SfxBoolItem
+
+       /* config: */
+       AccelConfig = TRUE,
+       MenuConfig = TRUE,
+       StatusBarConfig = FALSE,
+       ToolBoxConfig = TRUE,
+       GroupId = GID_ENUMERATION;
+]
+SfxBoolItem CurrentNumNumRule FN_NUM_NUM_RULE_INDEX
+(SfxUInt16Item On FN_PARAM_1)
+[
+       /* flags: */
+       AutoUpdate = TRUE,
+       Cachable = Cachable,
+       FastCall = FALSE,
+       HasCoreId = FALSE,
+       HasDialog = FALSE,
+       ReadOnlyDoc = FALSE,
+       Toggle = TRUE,
+       Container = FALSE,
+       RecordAbsolute = FALSE,
+       RecordPerSet;
+       Synchron;
+
+       ImageRotation = TRUE;
+    ImageReflection = TRUE;
+    /* status: */
+       SlotType = SfxBoolItem
+
+       /* config: */
+       AccelConfig = TRUE,
+       MenuConfig = TRUE,
+       StatusBarConfig = FALSE,
+       ToolBoxConfig = TRUE,
+       GroupId = GID_ENUMERATION;
+]
+
 //--------------------------------------------------------------------------
 SfxVoidItem InsertObject SID_INSERT_OBJECT
 ( SfxGlobalNameItem ClassId SID_INSERT_OBJECT )

Modified: openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmg.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmg.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmg.cxx (original)
+++ openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmg.cxx Tue Apr  2 
15:47:46 2013
@@ -1,45 +1,23 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+/**************************************************************
  * 
- * Copyright IBM Corporation 2009.
- * Copyright 2009. by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: nbdtmg.cxx,v $
- * $Revision: 1.00.00.0 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org.  If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-/***********************************************************************
- *
- *     Tool to Visualize Internal Data Structure for Productive Development
- *     It is a developer's tool from Lotus Symphony Documents Editor Team
- *
- *     This file provides developers of OpenOffice.org a visualize tool for 
tracing 
- *     the internal data structure and its parameters. 
- *
- *     Date: 05/25/2009
- *
- ***********************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
 #include "precompiled_svx.hxx"
 #ifndef _NBDTMG_HXX
 #include <svx/nbdtmg.hxx>
@@ -94,7 +72,6 @@
 #include <unotools/streamwrap.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <unotools/pathoptions.hxx>
-//#include <svtools/pathoptions.hxx>
 #include <editeng/eeitem.hxx>
 
 #include <com/sun/star/text/HoriOrientation.hpp>
@@ -131,7 +108,6 @@ typedef NumberSettings_Impl* NumberSetti
 SV_DECL_PTRARR_DEL(NumberSettingsArr_Impl,NumberSettings_ImplPtr,8,4)
 SV_IMPL_PTRARR( NumberSettingsArr_Impl, NumberSettings_ImplPtr )
 
-//extern Font& lcl_GetDefaultBulletFont();
 Font& lcl_GetDefaultBulletFont()
 {
        static sal_Bool bInit = 0;
@@ -234,12 +210,7 @@ void NBOTypeMgrBase::StoreBulCharFmtName
                if ( pSet )
                {       
                        SfxAllItemSet aSet(*pSet);
-                       //const SfxPoolItem* pItem;
-                       
SFX_ITEMSET_ARG(&aSet,pBulletCharFmt,SfxStringItem,SID_BULLET_CHAR_FMT,sal_False);
-                       //if(SFX_ITEM_SET == 
pSet->GetItemState(SID_BULLET_CHAR_FMT, sal_False, &pItem))
-                       //      pNumCharFmtName = new String(((const 
SfxStringItem*)pItem)->GetValue());
-                       
-                       //const SfxStringItem* pBulletCharFmt = (const 
SfxStringItem*)(pSet->GetItem(SID_BULLET_CHAR_FMT));                     
+                       
SFX_ITEMSET_ARG(&aSet,pBulletCharFmt,SfxStringItem,SID_BULLET_CHAR_FMT,sal_False);
                      
                                
                        if ( pBulletCharFmt )
                        {
@@ -254,7 +225,6 @@ String NBOTypeMgrBase::GetBulCharFmtName
 void NBOTypeMgrBase::ImplLoad(String filename)
 {
        bIsLoading = true;
-       //Sym3_2508 store size with stardard unit
        SfxMapUnit              eOldCoreUnit=eCoreUnit;
        eCoreUnit = SFX_MAPUNIT_100TH_MM;       
        INetURLObject aFile( SvtPathOptions().GetPalettePath() );
@@ -295,7 +265,6 @@ void NBOTypeMgrBase::ImplLoad(String fil
 void NBOTypeMgrBase::ImplStore(String filename)
 {
        if (bIsLoading) return;
-       //Sym3_2508 store size with stardard unit
        SfxMapUnit              eOldCoreUnit=eCoreUnit;
        eCoreUnit = SFX_MAPUNIT_100TH_MM;       
        INetURLObject aFile( SvtPathOptions().GetPalettePath() );
@@ -1138,7 +1107,6 @@ sal_Bool MixBulletsTypeMgr::RelplaceNumR
                const Font* pFont = aFmt.GetBulletFont();
                BulletsSettings_Impl* pEntry = (BulletsSettings_Impl*) 
(pActualBullets[nIndex]->pBullets);
                pEntry->cBulletChar = cChar;
-               //Sym3_2884 provide a default font when pFont is NULL
                pEntry->aFont = pFont?*pFont:lcl_GetDefaultBulletFont();
                pEntry->bIsCustomized = sal_True;
                String aStrFromRES = String(SVX_RESSTR( 
RID_SVXSTR_NUMBULLET_CUSTOM_BULLET_DESCRIPTION));
@@ -1182,7 +1150,6 @@ sal_Bool MixBulletsTypeMgr::RelplaceNumR
                                        //pEntry->pGrfObj = pGrf;
                                        pEntry->pGrfObj = new Graphic(*pGrf);
                                        pEntry->aSize = aFmt.GetGraphicSize();
-                                       //Sym3_2508 use standard unit to store 
size
                                        pEntry->aSize = 
OutputDevice::LogicToLogic(pEntry->aSize,(MapUnit)GetMapUnit(),MAP_100TH_MM);
                                        sal_uInt16 nDIndex = 
mGrfTMgr->GetNBOIndexForNumRule(aNum,mLevel);
                                        if (nDIndex!=(sal_uInt16)0xFFFF) 
pEntry->aSize=Size(0,0);
@@ -1206,7 +1173,6 @@ sal_Bool MixBulletsTypeMgr::RelplaceNumR
                        pActualBullets[nIndex]->nIndex = nIndex+1; //index in 
the tab page display,decrease 1 to the index within arr
                        pActualBullets[nIndex]->pBullets = new 
BulletsSettings_Impl(eNBType::BULLETS) ;
                        
((BulletsSettings_Impl*)(pActualBullets[nIndex]->pBullets))->cBulletChar = 
cChar;
-                       //Sym3_2884 provide a default font when pFont is NULL
                        
((BulletsSettings_Impl*)(pActualBullets[nIndex]->pBullets))->aFont = 
pFont?*pFont:lcl_GetDefaultBulletFont();
                        
((BulletsSettings_Impl*)(pActualBullets[nIndex]->pBullets))->bIsCustomized = 
sal_True;
                        
((BulletsSettings_Impl*)(pActualBullets[nIndex]->pBullets))->eType = 
eNBType::BULLETS;
@@ -1269,7 +1235,6 @@ sal_Bool MixBulletsTypeMgr::RelplaceNumR
                                                
//((GrfBulDataRelation*)(pActualBullets[nIndex]->pBullets))->pGrfObj = pGrf;
                                                
((GrfBulDataRelation*)(pActualBullets[nIndex]->pBullets))->pGrfObj = new 
Graphic(*pGrf);
                                                
((GrfBulDataRelation*)(pActualBullets[nIndex]->pBullets))->pGrfObj = new 
Graphic(*pGrf);
-                                               //Sym3_2508 use standard unit 
to store size
                                                Size aTmpSize = 
aFmt.GetGraphicSize();
                                                aTmpSize = 
OutputDevice::LogicToLogic(aTmpSize,(MapUnit)GetMapUnit(),MAP_100TH_MM);
                                                sal_uInt16 nDIndex = 
mGrfTMgr->GetNBOIndexForNumRule(aNum,mLevel);
@@ -1325,8 +1290,7 @@ sal_Bool MixBulletsTypeMgr::ApplyNumRule
                                aFmt.SetNumberingType( SVX_NUM_CHAR_SPECIAL );
                                aFmt.SetBulletFont(&rActBulletFont);
                                aFmt.SetBulletChar(cChar );
-                               aFmt.SetCharFmtName(sBulletCharFmtName);       
-                               //Sym3_2398
+                               aFmt.SetCharFmtName(sBulletCharFmtName);
                                String aEmptyStr;
                                aFmt.SetPrefix( aEmptyStr );                    
                
                                aFmt.SetSuffix( aEmptyStr );
@@ -1516,7 +1480,6 @@ void NumberingTypeMgr::Init()
                                pNumEntry->nIndex = i + 1;
                                pNumEntry->nIndexDefault = i;
                                pNumEntry->pNumSetting = pNew;
-                               //Modified for Sym2_7882
                 //SetItemText( i + 1, SVX_RESSTR( 
RID_SVXSTR_SINGLENUM_DESCRIPTIONS + i ));
                                {
                                        String sText;
@@ -2080,7 +2043,6 @@ sal_Bool OutlineTypeMgr::ApplyNumRule(Sv
                        aFmt.SetCharFmtName(sBulletCharFmtName);
                if (isResetSize) aFmt.SetBulletRelSize(100);
                }
-               //Sym3_2636. Do not set indent values if no default value for 
this level
                if(pNumSettingsArr->Count() > i) {
                        
aFmt.SetLabelFollowedBy(pLevelSettings->eLabelFollowedBy);
                        aFmt.SetListtabPos(pLevelSettings->nTabValue);

Modified: openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmgfact.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmgfact.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmgfact.cxx 
(original)
+++ openoffice/branches/sidebar/main/svx/source/sidebar/nbdtmgfact.cxx Tue Apr  
2 15:47:46 2013
@@ -1,45 +1,23 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+/**************************************************************
  * 
- * Copyright IBM Corporation 2009.
- * Copyright 2009. by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: nbdtmgfact.cxx,v $
- * $Revision: 1.00.00.0 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org.  If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-/********************************************************************************
- *
- *     Tool to Visualize Internal Data Structure for Productive Development
- *     It is a developer's tool from Lotus Symphony Documents Editor Team
- *
- *     This file implements the base abstract exporter and 2 inherited 
sub-classes for 
- *     the internal data structure tracer. 
- *
- *     Date: 05/25/2009
- *
- 
********************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
 
 #ifndef _NBDTMGFACT_HXX
 #include <svx/nbdtmgfact.hxx>

Modified: 
openoffice/branches/sidebar/main/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- 
openoffice/branches/sidebar/main/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
 (original)
+++ 
openoffice/branches/sidebar/main/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
 Tue Apr  2 15:47:46 2013
@@ -1324,9 +1324,9 @@ void ParaPropertyPanel::StateChangedInde
                        maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_DEC, 
sal_True);
                }
 
-               maTbxProDemote->Enable();
-               if( !mbOutLineRight && !mbOutLineLeft )
-                       maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_True);
+//             maTbxProDemote->Enable();
+//             if( !mbOutLineRight && !mbOutLineLeft )
+//                     maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_True);
                maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_True);
        }
        else if( eState == SFX_ITEM_DISABLED )
@@ -1342,7 +1342,7 @@ void ParaPropertyPanel::StateChangedInde
                else
                        maTbxIndent_IncDec->EnableItem(ID_HANGING_INDENT, 
sal_False);
 
-               maTbxProDemote->Disable();
+//             maTbxProDemote->Disable();
                maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_False);
        }
        else
@@ -1356,7 +1356,7 @@ void ParaPropertyPanel::StateChangedInde
                        maTbxIndent_IncDec->Disable();
                else
                        maTbxIndent_IncDec->EnableItem(ID_HANGING_INDENT, 
sal_False);
-               maTbxProDemote->Disable();
+//             maTbxProDemote->Disable();
                maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_False);
        }
 }
@@ -1439,14 +1439,14 @@ void ParaPropertyPanel::StateChangeOutLi
        else
                maTbxProDemote->EnableItem(BT_TBX_INDENT_PROMOTE, sal_False);
 
-       if( !mbOutLineRight && !mbOutLineLeft )
-       {
-               maTbxProDemote->EnableItem(BT_TBX_INDENT_PROMOTE, sal_True);
-               maTbxProDemote->EnableItem(BT_TBX_INDENT_DEMOTE, sal_True);
-               maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_True);
-       }
-       else 
-               maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_False);
+//     if( !mbOutLineRight && !mbOutLineLeft )
+//     {
+//             maTbxProDemote->EnableItem(BT_TBX_INDENT_PROMOTE, sal_True);
+//             maTbxProDemote->EnableItem(BT_TBX_INDENT_DEMOTE, sal_True);
+//             maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_True);
+//     }
+//     else 
+//             maTbxProDemote->EnableItem(SD_HANGING_INDENT, sal_False);
 }
 
 void ParaPropertyPanel::StateChangeIncDecImpl( sal_uInt16 nSID, SfxItemState 
eState, const SfxPoolItem* pState )

Modified: openoffice/branches/sidebar/main/sw/inc/editsh.hxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/inc/editsh.hxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/inc/editsh.hxx (original)
+++ openoffice/branches/sidebar/main/sw/inc/editsh.hxx Tue Apr  2 15:47:46 2013
@@ -496,6 +496,9 @@ public:
     sal_Bool HasBullet() const;
     // <- i29560
 
+    sal_Bool SelectionHasNumber() const;
+    sal_Bool SelectionHasBullet() const;
+
        String GetUniqueNumRuleName( const String* pChkStr = 0, sal_Bool 
bAutoNum = sal_True ) const;
        void ChgNumRuleFmts( const SwNumRule& rRule );
        // setze und erfrage, ob an aktueller PointPos eine Numerierung mit

Modified: openoffice/branches/sidebar/main/sw/sdi/_textsh.sdi
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/sdi/_textsh.sdi?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/sdi/_textsh.sdi (original)
+++ openoffice/branches/sidebar/main/sw/sdi/_textsh.sdi Tue Apr  2 15:47:46 2013
@@ -732,6 +732,18 @@ interface BaseText
                StateMethod = GetState ;
                DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
        ]
+       FN_BUL_NUM_RULE_INDEX // status(final|play)
+       [
+               ExecMethod = ExecEnterNum ;
+               StateMethod = GetState ;
+               DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
+       ]
+       FN_NUM_NUM_RULE_INDEX // status(final|play)
+       [
+               ExecMethod = ExecEnterNum ;
+               StateMethod = GetState ;
+               DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
+       ]
        FN_NUMBER_BULLETS // status(final|play)
        [
                ExecMethod = ExecEnterNum ;

Modified: openoffice/branches/sidebar/main/sw/source/core/edit/ednumber.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/source/core/edit/ednumber.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/source/core/edit/ednumber.cxx (original)
+++ openoffice/branches/sidebar/main/sw/source/core/edit/ednumber.cxx Tue Apr  
2 15:47:46 2013
@@ -164,7 +164,88 @@ sal_Bool SwEditShell::NoNum()
        return bRet;
 }
 // Loeschen, Splitten der Aufzaehlungsliste
+sal_Bool SwEditShell::SelectionHasNumber() const
+{
+    sal_Bool bResult = HasNumber();
+    const SwTxtNode * pTxtNd =
+        GetCrsr()->GetPoint()->nNode.GetNode().GetTxtNode();
+       if (!bResult && pTxtNd && pTxtNd->Len()==0 && !pTxtNd->GetNumRule()) {
+               SwPamRanges aRangeArr( *GetCrsr() );
+               SwPaM aPam( *GetCrsr()->GetPoint() );
+               for( sal_uInt16 n = 0; n < aRangeArr.Count(); ++n )
+        {
+            aRangeArr.SetPam( n, aPam );
+                       {
+                                       sal_uInt32 nStt = 
aPam.GetPoint()->nNode.GetIndex(),
+                                                 nEnd = 
aPam.GetMark()->nNode.GetIndex();
+                                       if( nStt > nEnd )
+                                       {
+                                               sal_uInt32 nTmp = nStt; nStt = 
nEnd; nEnd = nTmp;
+                                       }
+                                       for (sal_uInt32 nPos = nStt; 
nPos<=nEnd; nPos++) {
+                                               SwTxtNode * pTxtNd = 
pDoc->GetNodes()[nPos]->GetTxtNode();
+                                               if (pTxtNd && pTxtNd->Len()!=0)
+                                               {
+                                                       bResult = 
pTxtNd->HasNumber();
+
+                                                       // --> OD 2005-10-26 
#b6340308#
+                                                       // special case: 
outline numbered, not counted paragraph
+                                                       if ( bResult &&
+                                                               
pTxtNd->GetNumRule() == GetDoc()->GetOutlineNumRule() &&
+                                                               
!pTxtNd->IsCountedInList() )
+                                                       {
+                                                               bResult = 
sal_False;
+                                                       }
+                                                       if (bResult==sal_False) 
{
+                                                               break;
+                                                       } 
+                                                       // <--
+                                               }
+                                       }
+                       }
+        }
+
+       }
 
+    return bResult;
+}
+//Sym3_879 add a new function to determine number on/off status
+sal_Bool SwEditShell::SelectionHasBullet() const
+{
+    sal_Bool bResult = HasBullet();
+    const SwTxtNode * pTxtNd =
+        GetCrsr()->GetPoint()->nNode.GetNode().GetTxtNode();
+       if (!bResult && pTxtNd && pTxtNd->Len()==0 && !pTxtNd->GetNumRule()) {
+               SwPamRanges aRangeArr( *GetCrsr() );
+               SwPaM aPam( *GetCrsr()->GetPoint() );
+               for( sal_uInt16 n = 0; n < aRangeArr.Count(); ++n )
+        {
+            aRangeArr.SetPam( n, aPam );
+                       {
+                                       sal_uInt32 nStt = 
aPam.GetPoint()->nNode.GetIndex(),
+                                                 nEnd = 
aPam.GetMark()->nNode.GetIndex();
+                                       if( nStt > nEnd )
+                                       {
+                                               sal_uInt32 nTmp = nStt; nStt = 
nEnd; nEnd = nTmp;
+                                       }
+                                       for (sal_uInt32 nPos = nStt; 
nPos<=nEnd; nPos++) {
+                                               SwTxtNode * pTxtNd = 
pDoc->GetNodes()[nPos]->GetTxtNode();
+                                               if (pTxtNd && pTxtNd->Len()!=0)
+                                               {
+                                               bResult = pTxtNd->HasBullet();
+
+                                                       if (bResult==sal_False) 
{
+                                                               break;
+                                                       } 
+                                               }
+                                       }
+                       }
+        }
+
+       }
+
+    return bResult;
+}
 // -> #i29560#
 sal_Bool SwEditShell::HasNumber() const
 {

Modified: openoffice/branches/sidebar/main/sw/source/ui/shells/frmsh.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/source/ui/shells/frmsh.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/source/ui/shells/frmsh.cxx (original)
+++ openoffice/branches/sidebar/main/sw/source/ui/shells/frmsh.cxx Tue Apr  2 
15:47:46 2013
@@ -391,13 +391,13 @@ void SwFrameShell::Execute(SfxRequest &r
             bool bApplyNewSize = false;
 
             Size aNewSize = aMgr.GetSize();
-            if ( SFX_ITEM_SET == pArgs->GetItemState( 
SID_ATTR_TRANSFORM_WIDTH, FALSE, &pItem ) )
+            if ( SFX_ITEM_SET == pArgs->GetItemState( 
SID_ATTR_TRANSFORM_WIDTH, sal_False, &pItem ) )
             {
                 aNewSize.setWidth( static_cast< const SfxUInt32Item* 
>(pItem)->GetValue() );
                 bApplyNewSize = true;
             }
 
-            if ( SFX_ITEM_SET == pArgs->GetItemState( 
SID_ATTR_TRANSFORM_HEIGHT, FALSE, &pItem ) )
+            if ( SFX_ITEM_SET == pArgs->GetItemState( 
SID_ATTR_TRANSFORM_HEIGHT, sal_False, &pItem ) )
             {
                 aNewSize.setHeight( static_cast< const SfxUInt32Item* 
>(pItem)->GetValue() );
                 bApplyNewSize = true;

Modified: openoffice/branches/sidebar/main/sw/source/ui/shells/textsh1.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/source/ui/shells/textsh1.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/source/ui/shells/textsh1.cxx (original)
+++ openoffice/branches/sidebar/main/sw/source/ui/shells/textsh1.cxx Tue Apr  2 
15:47:46 2013
@@ -126,7 +126,19 @@
 #include <sfx2/objface.hxx>
 #include <langhelper.hxx>
 
+#ifndef _NBDTMGFACT_HXX
+#include <svx/nbdtmgfact.hxx>
+#endif
+#ifndef _NBDTMG_HXX
+#include <svx/nbdtmg.hxx>
+#endif
+
+
+#include <numrule.hxx>
+
+
 using namespace ::com::sun::star;
+using namespace svx::sidebar;
 
 
 void lcl_CharDialog( SwWrtShell &rWrtSh, sal_Bool bUseDialog, sal_uInt16 
nSlot,const SfxItemSet *pArgs, SfxRequest *pReq )
@@ -1028,14 +1040,14 @@ void SwTextShell::Execute(SfxRequest &rR
                     //SetNumRuleStart(sal_True) restarts the numbering at the 
value
                     //that is defined at the starting point of the numbering 
level
                     //otherwise the SetNodeNumStart() value determines the 
start
-                    //if it's set to something different than USHRT_MAX
+                    //if it's set to something different than 
(sal_uInt16)0xFFFF
 
                     sal_Bool bStart = 
((SfxBoolItem&)pSet->Get(FN_NUMBER_NEWSTART)).GetValue();
                     // --> OD 2007-06-11 #b6560525#
-                    // Default value for restart value has to be USHRT_MAX
+                    // Default value for restart value has to be 
(sal_uInt16)0xFFFF
                     // in order to indicate that the restart value of the list
                     // style has to be used on restart.
-                    sal_uInt16 nNumStart = USHRT_MAX;
+                    sal_uInt16 nNumStart = (sal_uInt16)0xFFFF;
                     // <--
                                        if( SFX_ITEM_SET == 
pSet->GetItemState(FN_NUMBER_NEWSTART_AT) )
                     {
@@ -1682,6 +1694,51 @@ void SwTextShell::GetState( SfxItemSet &
                      rSet.DisableItem(nWhich);
             }
             break;
+            case FN_NUM_NUMBERING_ON:
+                
rSet.Put(SfxBoolItem(FN_NUM_NUMBERING_ON,rSh.SelectionHasNumber()));
+            break;
+            case FN_NUM_BULLET_ON:
+                
rSet.Put(SfxBoolItem(FN_NUM_BULLET_ON,rSh.SelectionHasBullet()));
+            break;
+            case FN_BUL_NUM_RULE_INDEX:
+            case FN_NUM_NUM_RULE_INDEX:
+               {                               
+                       SwNumRule* pCurRule = 
(SwNumRule*)(GetShell().GetCurNumRule()); 
+                       sal_uInt16      nActNumLvl = (sal_uInt16)0xFFFF;
+                       
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,DEFAULT_NONE));
+                       
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,DEFAULT_NONE));
+                       if( pCurRule )
+                       {                                       
+                               nActNumLvl = GetShell().GetNumLevel();
+                               if( nActNumLvl < MAXLEVEL )
+                               {
+                                       nActNumLvl = 1<<nActNumLvl;             
                                
+                               }
+                               SvxNumRule aSvxRule = 
pCurRule->MakeSvxNumRule();
+                               if ( GetShell().HasBullet())
+                               {
+                                       
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                       
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                       NBOTypeMgrBase* pBullets = 
NBOutlineTypeMgrFact::CreateInstance(eNBOType::MIXBULLETS);
+                                       if ( pBullets )
+                                       {
+                                               sal_uInt16 nBulIndex = 
pBullets->GetNBOIndexForNumRule(aSvxRule,nActNumLvl);
+                                               
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,nBulIndex));
+                                       }
+                               }else if ( GetShell().HasNumber() )
+                               {
+                                       
rSet.Put(SfxUInt16Item(FN_BUL_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                       
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,(sal_uInt16)0xFFFF));
+                                       NBOTypeMgrBase* pNumbering = 
NBOutlineTypeMgrFact::CreateInstance(eNBOType::NUMBERING);
+                                       if ( pNumbering )
+                                       {
+                                               sal_uInt16 nBulIndex = 
pNumbering->GetNBOIndexForNumRule(aSvxRule,nActNumLvl);
+                                               
rSet.Put(SfxUInt16Item(FN_NUM_NUM_RULE_INDEX,nBulIndex));
+                                       }
+                               }
+                       }
+               }
+            break;
             case FN_NUM_CONTINUE:
             {
                 // --> OD 2009-08-26 #i86492#
@@ -1780,7 +1837,7 @@ void SwTextShell::ChangeHeaderOrFooter(
 
                 if( !bCrsrSet && bOn )
                     bCrsrSet = rSh.SetCrsrInHdFt(
-                            !rStyleName.Len() ? USHRT_MAX : nFrom,
+                            !rStyleName.Len() ? (sal_uInt16)0xFFFF : nFrom,
                             bHeader );
             }
         }

Modified: openoffice/branches/sidebar/main/sw/source/ui/shells/txtnum.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/source/ui/shells/txtnum.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/source/ui/shells/txtnum.cxx (original)
+++ openoffice/branches/sidebar/main/sw/source/ui/shells/txtnum.cxx Tue Apr  2 
15:47:46 2013
@@ -48,7 +48,8 @@
 #include <sfx2/tabdlg.hxx>
 #include <svx/nbdtmg.hxx>
 #include <svx/nbdtmgfact.hxx>
-
+#include <sfx2/viewfrm.hxx>
+#include <sfx2/bindings.hxx>
 using namespace svx::sidebar;
 
 void SwTextShell::ExecEnterNum(SfxRequest &rReq)
@@ -58,40 +59,60 @@ void SwTextShell::ExecEnterNum(SfxReques
        {
        case FN_NUM_NUMBERING_ON:
        {
-        SFX_REQUEST_ARG( rReq, pItem, SfxBoolItem, FN_PARAM_1 , sal_False );
-        sal_Bool bMode = !GetShell().HasNumber(); // #i29560#
-        if ( pItem )
-            bMode = pItem->GetValue();
-        else
-            rReq.AppendItem( SfxBoolItem( FN_PARAM_1, bMode ) );
-
-        if ( bMode != (GetShell().HasNumber()) ) // #i29560#
-        {
-            rReq.Done();
-            if( bMode )
-                GetShell().NumOn();
-            else
-                GetShell().NumOrBulletOff(); // #i29560#
-        }
+               GetShell().StartAllAction();
+               SFX_REQUEST_ARG( rReq, pItem, SfxBoolItem, FN_PARAM_1 , 
sal_False );
+               sal_Bool bMode = !GetShell().SelectionHasNumber(); // #i29560#
+               if ( pItem )
+                       bMode = pItem->GetValue();
+               else
+                       rReq.AppendItem( SfxBoolItem( FN_PARAM_1, bMode ) );
+
+               if ( bMode != (GetShell().SelectionHasNumber()) ) // #i29560#
+               {
+                       rReq.Done();
+                       if( bMode )
+                               GetShell().NumOn();
+                       else
+                               GetShell().NumOrBulletOff(); // #i29560#
+               }
+               sal_Bool bNewResult = GetShell().SelectionHasNumber();
+               if (bNewResult!=bMode) {
+                       SfxBindings& rBindings = 
GetView().GetViewFrame()->GetBindings();
+                       SfxBoolItem aItem(FN_NUM_NUMBERING_ON,!bNewResult);
+                       rBindings.SetState(aItem);
+                       SfxBoolItem aNewItem(FN_NUM_NUMBERING_ON,bNewResult);
+                       rBindings.SetState(aNewItem);
+               }
+               GetShell().EndAllAction();
        }
        break;
        case FN_NUM_BULLET_ON:
        {
-        SFX_REQUEST_ARG( rReq, pItem, SfxBoolItem, FN_PARAM_1 , sal_False );
-        sal_Bool bMode = !GetShell().HasBullet(); // #i29560#
-        if ( pItem )
-            bMode = pItem->GetValue();
-        else
-            rReq.AppendItem( SfxBoolItem( FN_PARAM_1, bMode ) );
-
-        if ( bMode != (GetShell().HasBullet()) ) // #i29560#
-        {
-            rReq.Done();
-            if( bMode )
-                GetShell().BulletOn();
-            else
-                GetShell().NumOrBulletOff(); // #i29560#
-        }
+               GetShell().StartAllAction();
+               SFX_REQUEST_ARG( rReq, pItem, SfxBoolItem, FN_PARAM_1 , 
sal_False );
+               sal_Bool bMode = !GetShell().SelectionHasBullet(); // #i29560#
+               if ( pItem )
+                       bMode = pItem->GetValue();
+               else
+                       rReq.AppendItem( SfxBoolItem( FN_PARAM_1, bMode ) );
+
+               if ( bMode != (GetShell().SelectionHasBullet()) ) // #i29560#
+               {
+                       rReq.Done();
+                       if( bMode )
+                               GetShell().BulletOn();
+                       else
+                               GetShell().NumOrBulletOff(); // #i29560#
+               }
+               sal_Bool bNewResult = GetShell().SelectionHasBullet();
+               if (bNewResult!=bMode) {
+                       SfxBindings& rBindings = 
GetView().GetViewFrame()->GetBindings();
+                       SfxBoolItem aItem(FN_NUM_BULLET_ON,!bNewResult);
+                       rBindings.SetState(aItem);
+                       SfxBoolItem aNewItem(FN_NUM_BULLET_ON,bNewResult);
+                       rBindings.SetState(aNewItem);
+               }
+               GetShell().EndAllAction();
        }
        break;
        case FN_NUMBER_BULLETS:

Modified: openoffice/branches/sidebar/main/sw/source/ui/utlui/navipi.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sw/source/ui/utlui/navipi.cxx?rev=1463604&r1=1463603&r2=1463604&view=diff
==============================================================================
--- openoffice/branches/sidebar/main/sw/source/ui/utlui/navipi.cxx (original)
+++ openoffice/branches/sidebar/main/sw/source/ui/utlui/navipi.cxx Tue Apr  2 
15:47:46 2013
@@ -892,7 +892,7 @@ SwNavigationPI::SwNavigationPI( SfxBindi
                                                                        
SV_DRAGDROP_ENABLE_TOP );
        aContentTree.EnableAsyncDrag(sal_True);
        aContentTree.ShowTree();
-    aContentToolBox.CheckItem(FN_SHOW_CONTENT_BOX, sal_True);
+       aContentToolBox.CheckItem(FN_SHOW_CONTENT_BOX, sal_True);
 
 //     TreeListBox fuer Globaldokument
     aGlobalTree.SetPosSizePixel( 0, nListboxYPos, 0, 0, WINDOW_POSSIZE_Y );


Reply via email to