diff options
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/classification/baf.xsd | 2 | ||||
-rw-r--r-- | sfx2/classification/baf_loext.xsd | 5 | ||||
-rw-r--r-- | sfx2/classification/example.xml | 5 | ||||
-rw-r--r-- | sfx2/classification/example_sl-SI.xml | 5 | ||||
-rw-r--r-- | sfx2/source/view/classificationhelper.cxx | 15 |
5 files changed, 29 insertions, 3 deletions
diff --git a/sfx2/classification/baf.xsd b/sfx2/classification/baf.xsd index 02796eb29265..a0bae6cc9ff1 100644 --- a/sfx2/classification/baf.xsd +++ b/sfx2/classification/baf.xsd @@ -33,6 +33,7 @@ <xs:element ref="BusinessAuthorizationCategory" maxOccurs="unbounded"/> <xs:element ref="loext:Marking" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="loext:IntellectualPropertyPart" minOccurs="0" maxOccurs="unbounded"/> + <xs:element ref="loext:IntellectualPropertyPartNumber" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> @@ -42,6 +43,7 @@ <xs:element ref="BusinessAuthorizationCategory" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="loext:Marking" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="loext:IntellectualPropertyPart" minOccurs="0" maxOccurs="unbounded"/> + <xs:element ref="loext:IntellectualPropertyPartNumber" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> diff --git a/sfx2/classification/baf_loext.xsd b/sfx2/classification/baf_loext.xsd index 2d4ee5bb21a8..593eb01173d5 100644 --- a/sfx2/classification/baf_loext.xsd +++ b/sfx2/classification/baf_loext.xsd @@ -11,4 +11,9 @@ <xs:attribute name="Name" type="xs:string" use="optional"/> </xs:complexType> </xs:element> + <xs:element name="IntellectualPropertyPartNumber"> + <xs:complexType> + <xs:attribute name="Name" type="xs:string" use="optional"/> + </xs:complexType> + </xs:element> </xs:schema> diff --git a/sfx2/classification/example.xml b/sfx2/classification/example.xml index 5df86f9a9005..82098031ff91 100644 --- a/sfx2/classification/example.xml +++ b/sfx2/classification/example.xml @@ -79,7 +79,10 @@ </baf:ImpactLevel> </baf:BusinessAuthorizationCategory> <loext:Marking Name="Example Marking" /> - <loext:IntellectualPropertyPart Name="Example IP Part" /> + <loext:IntellectualPropertyPart Name="Example First IP Part" /> + <loext:IntellectualPropertyPart Name="Example Second IP Part" /> + <loext:IntellectualPropertyPartNumber Name="1" /> + <loext:IntellectualPropertyPartNumber Name="2" /> </baf:Included> </baf:BusinessAuthorization> <!-- vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sfx2/classification/example_sl-SI.xml b/sfx2/classification/example_sl-SI.xml index 89bb5c5f6f8f..727e0a390ef1 100644 --- a/sfx2/classification/example_sl-SI.xml +++ b/sfx2/classification/example_sl-SI.xml @@ -66,7 +66,10 @@ </baf:ImpactLevel> </baf:BusinessAuthorizationCategory> <loext:Marking Name="Example Marking" /> - <loext:IntellectualPropertyPart Name="Example IP Part" /> + <loext:IntellectualPropertyPart Name="Example First IP Part" /> + <loext:IntellectualPropertyPart Name="Example Second IP Part" /> + <loext:IntellectualPropertyPartNumber Name="1" /> + <loext:IntellectualPropertyPartNumber Name="2" /> </baf:Included> </baf:BusinessAuthorization> <!-- vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sfx2/source/view/classificationhelper.cxx b/sfx2/source/view/classificationhelper.cxx index eb9de5f9a3ff..24aaee5da8e5 100644 --- a/sfx2/source/view/classificationhelper.cxx +++ b/sfx2/source/view/classificationhelper.cxx @@ -100,6 +100,7 @@ public: std::vector<SfxClassificationCategory> m_aCategories; std::vector<OUString> m_aMarkings; std::vector<OUString> m_aIPParts; + std::vector<OUString> m_aIPPartNumbers; OUString m_aPolicyAuthorityName; bool m_bInPolicyAuthorityName = false; @@ -222,6 +223,11 @@ void SAL_CALL SfxClassificationParser::startElement(const OUString& rName, const OUString aName = xAttribs->getValueByName("Name"); m_aIPParts.push_back(aName); } + else if (rName == "loext:IntellectualPropertyPartNumber") + { + OUString aName = xAttribs->getValueByName("Name"); + m_aIPPartNumbers.push_back(aName); + } else if (rName == "baf:Scale") { m_aScale.clear(); @@ -333,6 +339,7 @@ public: std::vector<SfxClassificationCategory> m_aCategories; std::vector<OUString> m_aMarkings; std::vector<OUString> m_aIPParts; + std::vector<OUString> m_aIPPartNumbers; uno::Reference<document::XDocumentProperties> m_xDocumentProperties; @@ -387,6 +394,7 @@ void SfxClassificationHelper::Impl::parsePolicy() m_aCategories = xClassificationParser->m_aCategories; m_aMarkings = xClassificationParser->m_aMarkings; m_aIPParts = xClassificationParser->m_aIPParts; + m_aIPPartNumbers = xClassificationParser->m_aIPPartNumbers; } bool lcl_containsProperty(const uno::Sequence<beans::Property>& rProperties, const OUString& rName) @@ -561,7 +569,12 @@ const std::vector<OUString> SfxClassificationHelper::GetMarkings() const std::vector<OUString> SfxClassificationHelper::GetIntellectualPropertyParts() { - return m_pImpl->m_aMarkings; + return m_pImpl->m_aIPParts; +} + +const std::vector<OUString> SfxClassificationHelper::GetIntellectualPropertyPartNumbers() +{ + return m_pImpl->m_aIPPartNumbers; } const OUString& SfxClassificationHelper::GetBACName(SfxClassificationPolicyType eType) |