/* * Copyright (c) 2015 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include #include #include #include #include #include #include #include namespace Swift { class SWIFTEN_API FormPage { public: typedef boost::shared_ptr page; FormPage (); ~FormPage(); void setLabel(const std::string& label); const std::string& getLabel() const; const std::string& getXMLNS() const; void addChildSection(boost::shared_ptr& section); const std::vector >& getChildSections() const; void addTextElement(boost::shared_ptr& textElement); const std::vector >& getTextElements() const; void addReportedRef(boost::shared_ptr& reportedRef); const std::vector >& getReportedRefs() const; void addField(boost::shared_ptr& field); const std::vector >& getFields() const; void addFieldRef(std::string ref); const std::vector getFieldRefs() const; private: std::string xmlns_; std::string label_; std::vector > textElements_; std::vector > childSections_; std::vector > reportedRefs_; std::vector > fields_; std::vector fieldRefs_; }; }