21 #include <navicfg.hxx>
24 #include <osl/diagnose.h>
26 #include <com/sun/star/uno/Sequence.hxx>
29 using namespace ::
utl;
33 std::map<OUString, ContentTypeId> mPropNameToContentTypeId
54 return css::uno::Sequence<OUString>{
56 OUString(
"SelectedPosition"),
57 OUString(
"OutlineLevel"),
58 OUString(
"InsertMode"),
59 OUString(
"ActiveBlock"),
60 OUString(
"ShowListBox"),
61 OUString(
"GlobalDocMode"),
62 OUString(
"OutlineTracking"),
63 OUString(
"TableTracking"),
64 OUString(
"SectionTracking"),
65 OUString(
"FrameTracking"),
66 OUString(
"ImageTracking"),
67 OUString(
"OLEobjectTracking"),
68 OUString(
"BookmarkTracking"),
69 OUString(
"HyperlinkTracking"),
70 OUString(
"ReferenceTracking"),
71 OUString(
"IndexTracking"),
72 OUString(
"CommentTracking"),
73 OUString(
"DrawingObjectTracking"),
74 OUString(
"FieldTracking"),
75 OUString(
"FootnoteTracking"),
76 OUString(
"EndnoteTracking"),
77 OUString(
"NavigateOnSelect")};
81 utl::ConfigItem(
"Office.Writer/Navigator"),
88 m_bIsGlobalActive(true),
89 m_nOutlineTracking(1),
90 m_bIsNavigateOnSelect(
false)
101 OSL_ENSURE(aValues.getLength() == aNames.getLength(),
"GetProperties failed");
102 if(aValues.getLength() != aNames.getLength())
105 for(
int nProp = 0; nProp < aNames.getLength(); nProp++)
107 if(pValues[nProp].hasValue())
114 if (pValues[nProp] >>= nTmp)
121 "out-of-bounds ContentTypeId " << nTmp);
133 if (pValues[nProp] >>= nTmp)
138 case 5:
m_bIsSmall = *o3tl::doAccess<bool>(pValues[nProp]);
break;
141 case 8:
case 9:
case 10:
case 11:
case 12:
case 13:
case 14:
case 15:
case 16:
142 case 17:
case 18:
case 19:
case 20:
case 21:
145 *o3tl::doAccess<bool>(pValues[nProp]);
161 Sequence<Any> aValues(aNames.getLength());
164 for(
int nProp = 0; nProp < aNames.getLength(); nProp++)
168 case 0: pValues[nProp] <<=
static_cast<sal_Int32
>(
m_nRootType);
break;
171 case 3: pValues[nProp] <<=
static_cast<sal_uInt16
>(
m_nRegionMode);
break;
176 case 8:
case 9:
case 10:
case 11:
case 12:
case 13:
case 14:
case 15:
case 16:
177 case 17:
case 18:
case 19:
case 20:
case 21:
sal_Int32 m_nOutlineTracking
constexpr sal_uInt8 MAXLEVEL
ContentTypeId m_nRootType
virtual void Notify(const css::uno::Sequence< OUString > &aPropertyNames) override
virtual ~SwNavigationConfig() override
bool EnableNotification(const css::uno::Sequence< OUString > &rNames, bool bEnableInternalNotification=false)
virtual void ImplCommit() override
static bool PutProperties(css::uno::Reference< css::container::XHierarchicalNameAccess > const &xHierarchyAccess, const css::uno::Sequence< OUString > &rNames, const css::uno::Sequence< css::uno::Any > &rValues, bool bAllLocales)
static css::uno::Sequence< OUString > GetPropertyNames()
static css::uno::Sequence< css::uno::Any > GetProperties(css::uno::Reference< css::container::XHierarchicalNameAccess > const &xHierarchyAccess, const css::uno::Sequence< OUString > &rNames, bool bAllLocales)
sal_Int32 m_nOutlineLevel
o3tl::enumarray< ContentTypeId, bool > mContentTypeTrack
const PropertyValue * pValues
bool m_bIsNavigateOnSelect
#define SAL_WARN(area, stream)
bool m_bDetectedRangeSegmentation false