Isis 3 Programmer Reference
Isis::ShapeList::XmlHandler Class Reference

This class is used to read an shapes.xml file into an shape list. More...

Inheritance diagram for Isis::ShapeList::XmlHandler:
Inheritance graph
Collaboration diagram for Isis::ShapeList::XmlHandler:
Collaboration graph

Public Member Functions

 XmlHandler (ShapeList *shapeList, Project *project)
 Create an XML Handler (reader) that can populate the Shape list class data. More...
 
virtual bool startElement (const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
 Handle an XML start element. More...
 
virtual bool endElement (const QString &namespaceURI, const QString &localName, const QString &qName)
 Handle an XML end element. More...
 
virtual void setReader (XmlStackedHandlerReader *)
 
void switchToNewHandler (XmlStackedHandler *nextHandler)
 Switch to a new content handler and continue processing using the new handler. More...
 

Protected Member Functions

XmlStackedHandlerReaderreader ()
 
const XmlStackedHandlerReaderreader () const
 
bool fatalError (const QXmlParseException &exception)
 

Private Member Functions

 Q_DISABLE_COPY (XmlHandler)
 

Private Attributes

ShapeListm_shapeList
 This stores a pointer to the shape list that will be read into. More...
 
Projectm_project
 This stores a pointer to the project that the shapes in the shape list will be a part of. More...
 

Detailed Description

This class is used to read an shapes.xml file into an shape list.

Author
2012-07-01 Steven Lambright

Definition at line 105 of file ShapeList.h.

Constructor & Destructor Documentation

◆ XmlHandler()

Isis::ShapeList::XmlHandler::XmlHandler ( ShapeList shapeList,
Project project 
)

Create an XML Handler (reader) that can populate the Shape list class data.

Parameters
shapeListThe shape list we're going to be initializing
projectThe project that contains the shape list
See also
ShapeList::save()

Definition at line 769 of file ShapeList.cpp.

Member Function Documentation

◆ endElement()

bool Isis::ShapeList::XmlHandler::endElement ( const QString &  namespaceURI,
const QString &  localName,
const QString &  qName 
)
virtual

Handle an XML end element.

This handles <shapeList> by opening and reading the shapes.xml file.

Returns
bool If we should continue reading the XML (usually true).
Exceptions
IException::Io"Unable to open with read access"
IException::Io"Failed to open shape list XML"

Reimplemented from Isis::XmlStackedHandler.

Definition at line 815 of file ShapeList.cpp.

References _FILEINFO_, Isis::IException::Io, and Isis::XmlStackedHandlerReader::pushContentHandler().

◆ startElement()

bool Isis::ShapeList::XmlHandler::startElement ( const QString &  namespaceURI,
const QString &  localName,
const QString &  qName,
const QXmlAttributes &  atts 
)
virtual

Handle an XML start element.

This expects <shapeList> and <shape> elements (it reads both the project XML and the shapes.xml file).

Returns
bool If we should continue reading the XML (usually true).

Reimplemented from Isis::XmlStackedHandler.

Definition at line 781 of file ShapeList.cpp.

References Isis::ShapeList::name(), and Isis::ShapeList::path().

◆ switchToNewHandler()

void Isis::XmlStackedHandler::switchToNewHandler ( XmlStackedHandler nextHandler)
inherited

Switch to a new content handler and continue processing using the new handler.

Definition at line 32 of file XmlStackedHandler.cpp.

Referenced by Isis::XmlStackedHandlerReader::pushContentHandler().

Member Data Documentation

◆ m_project

Project* Isis::ShapeList::XmlHandler::m_project
private

This stores a pointer to the project that the shapes in the shape list will be a part of.

Definition at line 124 of file ShapeList.h.

◆ m_shapeList

ShapeList* Isis::ShapeList::XmlHandler::m_shapeList
private

This stores a pointer to the shape list that will be read into.

Definition at line 120 of file ShapeList.h.


The documentation for this class was generated from the following files: