summaryrefslogtreecommitdiff
path: root/configmgr/source/xcuparser.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'configmgr/source/xcuparser.hxx')
-rw-r--r--configmgr/source/xcuparser.hxx160
1 files changed, 0 insertions, 160 deletions
diff --git a/configmgr/source/xcuparser.hxx b/configmgr/source/xcuparser.hxx
deleted file mode 100644
index dda51d254f..0000000000
--- a/configmgr/source/xcuparser.hxx
+++ /dev/null
@@ -1,160 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* 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.
-*
-************************************************************************/
-
-#ifndef INCLUDED_CONFIGMGR_SOURCE_XCUPARSER_HXX
-#define INCLUDED_CONFIGMGR_SOURCE_XCUPARSER_HXX
-
-#include "sal/config.h"
-
-#include <stack>
-
-#include "rtl/ref.hxx"
-#include "rtl/ustring.hxx"
-#include "xmlreader/xmlreader.hxx"
-
-#include "additions.hxx"
-#include "node.hxx"
-#include "nodemap.hxx"
-#include "parser.hxx"
-#include "path.hxx"
-#include "type.hxx"
-#include "valueparser.hxx"
-#include "xmldata.hxx"
-
-namespace xmlreader { struct Span; }
-
-namespace configmgr {
-
-class GroupNode;
-class LocalizedPropertyNode;
-class Modifications;
-class Partial;
-class PropertyNode;
-class SetNode;
-struct Data;
-
-class XcuParser: public Parser {
-public:
- XcuParser(
- int layer, Data & data, Partial const * partial,
- Modifications * broadcastModifications, Additions * additions);
-
-private:
- virtual ~XcuParser();
-
- virtual xmlreader::XmlReader::Text getTextMode();
-
- virtual bool startElement(
- xmlreader::XmlReader & reader, int nsId, xmlreader::Span const & name);
-
- virtual void endElement(xmlreader::XmlReader const & reader);
-
- virtual void characters(xmlreader::Span const & span);
-
- enum Operation {
- OPERATION_MODIFY, OPERATION_REPLACE, OPERATION_FUSE, OPERATION_REMOVE };
-
- static Operation parseOperation(xmlreader::Span const & text);
-
- void handleComponentData(xmlreader::XmlReader & reader);
-
- void handleItem(xmlreader::XmlReader & reader);
-
- void handlePropValue(xmlreader::XmlReader & reader, PropertyNode * prop);
-
- void handleLocpropValue(
- xmlreader::XmlReader & reader, LocalizedPropertyNode * locprop);
-
- void handleGroupProp(xmlreader::XmlReader & reader, GroupNode * group);
-
- void handleUnknownGroupProp(
- xmlreader::XmlReader const & reader, GroupNode * group,
- rtl::OUString const & name, Type type, Operation operation,
- bool finalized);
-
- void handlePlainGroupProp(
- xmlreader::XmlReader const & reader, GroupNode * group,
- NodeMap::iterator const & propertyIndex, rtl::OUString const & name,
- Type type, Operation operation, bool finalized);
-
- void handleLocalizedGroupProp(
- xmlreader::XmlReader const & reader, LocalizedPropertyNode * property,
- rtl::OUString const & name, Type type, Operation operation,
- bool finalized);
-
- void handleGroupNode(
- xmlreader::XmlReader & reader, rtl::Reference< Node > const & group);
-
- void handleSetNode(xmlreader::XmlReader & reader, SetNode * set);
-
- void recordModification(bool addition);
-
- struct State {
- rtl::Reference< Node > node; // empty iff ignore or <items>
- rtl::OUString name; // empty and ignored if !insert
- bool ignore;
- bool insert;
- bool locked;
- bool pop;
-
- inline State(bool thePop):
- ignore(true), insert(false), locked(false), pop(thePop)
- {}
-
- inline State(rtl::Reference< Node > const & theNode, bool theLocked):
- node(theNode), ignore(false), insert(false), locked(theLocked),
- pop(true)
- {}
-
- inline State(
- rtl::Reference< Node > const & theNode,
- rtl::OUString const & theName, bool theLocked):
- node(theNode), name(theName), ignore(false), insert(true),
- locked(theLocked), pop(true)
- {}
- };
-
- typedef std::stack< State > StateStack;
-
- ValueParser valueParser_;
- Data & data_;
- Partial const * partial_;
- Modifications * broadcastModifications_;
- Additions * additions_;
- bool recordModifications_;
- bool trackPath_;
- rtl::OUString componentName_;
- StateStack state_;
- Path path_;
-};
-
-}
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */