summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--offapi/com/sun/star/style/CharacterProperties.idl38
-rw-r--r--sw/inc/unoprnms.hxx12
-rw-r--r--sw/source/core/unocore/unomap.cxx36
-rw-r--r--sw/source/core/unocore/unoprnms.cxx10
-rw-r--r--sw/source/core/unocore/unosrch.cxx8
5 files changed, 101 insertions, 3 deletions
diff --git a/offapi/com/sun/star/style/CharacterProperties.idl b/offapi/com/sun/star/style/CharacterProperties.idl
index 8ba1a6196f92..d03a30226617 100644
--- a/offapi/com/sun/star/style/CharacterProperties.idl
+++ b/offapi/com/sun/star/style/CharacterProperties.idl
@@ -23,7 +23,7 @@
#include <com/sun/star/util/Color.idl>
#include <com/sun/star/awt/FontSlant.idl>
#include <com/sun/star/container/XNameContainer.idl>
-
+#include <com/sun/star/table/BorderLine2.idl>
module com { module sun { module star { module style {
@@ -374,6 +374,42 @@ published service CharacterProperties
*/
[optional, property] com::sun::star::container::XNameContainer TextUserDefinedAttributes;
+ /** This property contains the left border of the object.
+ */
+ [property, optional] com::sun::star::table::BorderLine2 CharLeftBorder;
+
+ /** This property contains the right border of the object.
+ */
+ [property, optional] com::sun::star::table::BorderLine2 CharRightBorder;
+
+ /** This property contains the top border of the object.
+ */
+ [property, optional] com::sun::star::table::BorderLine2 CharTopBorder;
+
+ /** This property contains the bottom border of the object.
+ */
+ [property, optional] com::sun::star::table::BorderLine2 CharBottomBorder;
+
+ /** This property contains the distance from the border to the object.
+ */
+ [property, optional] long CharBorderDistance;
+
+ /** This property contains the distance from the left border to the object.
+ */
+ [property, optional] long CharLeftBorderDistance;
+
+ /** This property contains the distance from the right border to the object.
+ */
+ [property, optional] long CharRightBorderDistance;
+
+ /** This property contains the distance from the top border to the object.
+ */
+ [property, optional] long CharTopBorderDistance;
+
+ /** This property contains the distance from the bottom border to the object.
+ */
+ [property, optional] long CharBottomBorderDistance;
+
};
}; }; }; };
diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx
index d418a1228158..7466139e8d63 100644
--- a/sw/inc/unoprnms.hxx
+++ b/sw/inc/unoprnms.hxx
@@ -826,7 +826,17 @@ enum SwPropNameIds
/* 0762 */ UNO_NAME_PARA_INTEROP_GRAB_BAG,
-/* 0762 */ SW_PROPNAME_END
+/* 0763 */ UNO_NAME_CHAR_LEFT_BORDER,
+/* 0764 */ UNO_NAME_CHAR_RIGHT_BORDER,
+/* 0765 */ UNO_NAME_CHAR_TOP_BORDER,
+/* 0766 */ UNO_NAME_CHAR_BOTTOM_BORDER,
+/* 0767 */ UNO_NAME_CHAR_BORDER_DISTANCE,
+/* 0768 */ UNO_NAME_CHAR_LEFT_BORDER_DISTANCE,
+/* 0769 */ UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE,
+/* 0770 */ UNO_NAME_CHAR_TOP_BORDER_DISTANCE,
+/* 0771 */ UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE,
+
+/* 0772 */ SW_PROPNAME_END
// new items in this array must match SwPropNameTab aPropNameTab
};
diff --git a/sw/source/core/unocore/unomap.cxx b/sw/source/core/unocore/unomap.cxx
index 6b9cadd536ff..f9d71a665227 100644
--- a/sw/source/core/unocore/unomap.cxx
+++ b/sw/source/core/unocore/unomap.cxx
@@ -204,6 +204,15 @@ SwUnoPropertyMapProvider::~SwUnoPropertyMapProvider()
{ SW_PROP_NMID(UNO_NAME_PARA_BACK_TRANSPARENT), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,MID_GRAPHIC_TRANSPARENT }, \
{ SW_PROP_NMID(UNO_NAME_NUMBERING_STYLE_NAME), RES_PARATR_NUMRULE, CPPU_E2T(CPPUTYPE_OUSTRING), PropertyAttribute::MAYBEVOID, 0}, \
{ SW_PROP_NMID(UNO_NAME_CHAR_WORD_MODE), RES_CHRATR_WORDLINEMODE,CPPU_E2T(CPPUTYPE_BOOLEAN) , PropertyAttribute::MAYBEVOID, 0}, \
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, LEFT_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, RIGHT_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, TOP_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, BOTTOM_BORDER|CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BORDER_DISTANCE|CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, TOP_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },\
{ SW_PROP_NMID(UNO_NAME_LEFT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, LEFT_BORDER |CONVERT_TWIPS }, \
{ SW_PROP_NMID(UNO_NAME_RIGHT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, RIGHT_BORDER |CONVERT_TWIPS }, \
{ SW_PROP_NMID(UNO_NAME_TOP_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PropertyAttribute::MAYBEVOID, TOP_BORDER |CONVERT_TWIPS }, \
@@ -428,6 +437,15 @@ SwUnoPropertyMapProvider::~SwUnoPropertyMapProvider()
{ SW_PROP_NMID(UNO_NAME_PARA_BOTTOM_MARGIN_RELATIVE), RES_UL_SPACE, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, MID_LO_REL_MARGIN},\
TABSTOPS_MAP_ENTRY\
{ SW_PROP_NMID(UNO_NAME_CHAR_WORD_MODE), RES_CHRATR_WORDLINEMODE,CPPU_E2T(CPPUTYPE_BOOLEAN) , PROPERTY_NONE, 0},\
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, LEFT_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, RIGHT_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, TOP_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, BOTTOM_BORDER |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32),PROPERTY_NONE, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, TOP_BORDER_DISTANCE |CONVERT_TWIPS },\
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },\
{ SW_PROP_NMID(UNO_NAME_LEFT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, LEFT_BORDER |CONVERT_TWIPS },\
{ SW_PROP_NMID(UNO_NAME_RIGHT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, RIGHT_BORDER |CONVERT_TWIPS },\
{ SW_PROP_NMID(UNO_NAME_TOP_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, TOP_BORDER |CONVERT_TWIPS },\
@@ -574,6 +592,15 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_CHAR_ROTATION_IS_FIT_TO_LINE), RES_CHRATR_ROTATE, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_FITTOLINE },
{ SW_PROP_NMID(UNO_NAME_CHAR_SCALE_WIDTH), RES_CHRATR_SCALEW, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, 0 },
{ SW_PROP_NMID(UNO_NAME_CHAR_RELIEF), RES_CHRATR_RELIEF, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, MID_RELIEF },
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, LEFT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, RIGHT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, TOP_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, BOTTOM_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aCharStyleMap;
@@ -622,6 +649,15 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_CHAR_SCALE_WIDTH), RES_CHRATR_SCALEW, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, 0 },
{ SW_PROP_NMID(UNO_NAME_CHAR_RELIEF), RES_CHRATR_RELIEF, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, MID_RELIEF },
{ SW_PROP_NMID(UNO_NAME_CHAR_AUTO_STYLE_NAME), RES_TXTATR_AUTOFMT, CPPU_E2T(CPPUTYPE_OUSTRING), PropertyAttribute::MAYBEVOID, 0},
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, LEFT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, RIGHT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, TOP_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), PROPERTY_NONE, BOTTOM_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_LEFT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_TOP_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE), RES_CHRATR_BOX, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aAutoCharStyleMap;
diff --git a/sw/source/core/unocore/unoprnms.cxx b/sw/source/core/unocore/unoprnms.cxx
index b721a3acfea6..39e691fd0a95 100644
--- a/sw/source/core/unocore/unoprnms.cxx
+++ b/sw/source/core/unocore/unoprnms.cxx
@@ -792,6 +792,16 @@ const SwPropNameTab aPropNameTab = {
/* 0760 UNO_NAME_DEFAULT_PAGE_MODE */ {MAP_CHAR_LEN("DefaultPageMode")},
/* 0761 UNO_NAME_CHAR_SHADING_VALUE */ {MAP_CHAR_LEN("CharShadingValue")},
/* 0762 UNO_NAME_PARA_INTEROP_GRAB_BAG */ {MAP_CHAR_LEN("ParaInteropGrabBag")},
+/* 0763 UNO_NAME_CHAR_LEFT_BORDER */ {MAP_CHAR_LEN("CharLeftBorder")},
+/* 0764 UNO_NAME_CHAR_RIGHT_BORDER */ {MAP_CHAR_LEN("CharRightBorder")},
+/* 0765 UNO_NAME_CHAR_TOP_BORDER */ {MAP_CHAR_LEN("CharTopBorder")},
+/* 0766 UNO_NAME_CHAR_BOTTOM_BORDER*/ {MAP_CHAR_LEN("CharBottomBorder")},
+/* 0767 UNO_NAME_CHAR_BORDER_DISTANCE */ {MAP_CHAR_LEN("CharBorderDistance")},
+/* 0768 UNO_NAME_CHAR_LEFT_BORDER_DISTANCE */ {MAP_CHAR_LEN("CharLeftBorderDistance")},
+/* 0769 UNO_NAME_CHAR_RIGHT_BORDER_DISTANCE */ {MAP_CHAR_LEN("CharRightBorderDistance")},
+/* 0770 UNO_NAME_CHAR_TOP_BORDER_DISTANCE */ {MAP_CHAR_LEN("CharTopBorderDistance")},
+/* 0771 UNO_NAME_CHAR_BOTTOM_BORDER_DISTANCE */ {MAP_CHAR_LEN("CharBottomBorderDistance")},
+
// new items in this array must match enum SwPropNameIds
};
diff --git a/sw/source/core/unocore/unosrch.cxx b/sw/source/core/unocore/unosrch.cxx
index a3b7ca557818..bc728f43a10f 100644
--- a/sw/source/core/unocore/unosrch.cxx
+++ b/sw/source/core/unocore/unosrch.cxx
@@ -123,9 +123,9 @@ const uno::Sequence< beans::PropertyValue > SwSearchProperties_Impl::GetProperti
void SwSearchProperties_Impl::FillItemSet(SfxItemSet& rSet, sal_Bool bIsValueSearch) const
{
- //
SfxPoolItem* pBoxItem = 0,
+ *pCharBoxItem = 0,
*pBreakItem = 0,
*pAutoKernItem = 0,
*pWLineItem = 0,
@@ -184,6 +184,11 @@ void SwSearchProperties_Impl::FillItemSet(SfxItemSet& rSet, sal_Bool bIsValueSea
pBoxItem = rSet.GetPool()->GetDefaultItem(aIt->nWID).Clone();
pTempItem = pBoxItem;
break;
+ case RES_CHRATR_BOX:
+ if(!pCharBoxItem)
+ pCharBoxItem = rSet.GetPool()->GetDefaultItem(aIt->nWID).Clone();
+ pTempItem = pCharBoxItem;
+ break;
case RES_BREAK:
if(!pBreakItem)
pBreakItem = rSet.GetPool()->GetDefaultItem(aIt->nWID).Clone();
@@ -418,6 +423,7 @@ void SwSearchProperties_Impl::FillItemSet(SfxItemSet& rSet, sal_Bool bIsValueSea
}
}
delete pBoxItem;
+ delete pCharBoxItem;
delete pBreakItem;
delete pAutoKernItem ;
delete pWLineItem;