struct CCL::IHtmlWriter

Overview

#include <ihtmlwriter.h>

struct IHtmlWriter: public CCL::ISgmlWriter
{
    // methods

    virtual ITextBuilder*CCL_API createHtmlBuilder () = 0;

    virtual tresult CCL_API pushMetaElement (
        StringRef name,
        StringRef content,
        tbool isHttpEquiv
    ) = 0;

    virtual tresult CCL_API pushStyleElement (StringRef cssContent) = 0;
    virtual tresult CCL_API writeHead (StringRef title) = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;
    virtual void CCL_API setDocumentLineFormat (TextLineFormat lineFormat) = 0;

    virtual tresult CCL_API beginDocument (
        IStream& stream,
        TextEncoding encoding = Text::kUnknownEncoding
    ) = 0;

    virtual tresult CCL_API endDocument () = 0;
    virtual tresult CCL_API writeLine (StringRef text) = 0;

    virtual tresult CCL_API writeMarkup (
        StringRef markup,
        tbool appendNewline = false
    ) = 0;

    virtual tresult CCL_API encode (String& result, StringRef text) = 0;
    virtual tresult CCL_API encode (MutableCString& result, StringRef text) = 0;
    virtual tresult CCL_API decode (String& result, StringRef text) = 0;

    virtual tresult CCL_API writeDocType (
        StringRef name,
        StringRef pubid,
        StringRef sysid,
        StringRef subset
    ) = 0;

    virtual void CCL_API setShouldIndent (tbool state) = 0;

    virtual tresult CCL_API startElement (
        StringRef name,
        const IStringDictionary* attributes = nullptr
    ) = 0;

    virtual tresult CCL_API endElement (StringRef name) = 0;
    virtual tresult CCL_API writeElement (StringRef name, StringRef value) = 0;

    virtual tresult CCL_API writeElement (
        StringRef name,
        const IStringDictionary* attributes = nullptr,
        StringRef value = nullptr
    ) = 0;

    virtual tresult CCL_API writeValue (StringRef value) = 0;
    virtual tresult CCL_API writeComment (StringRef text) = 0;
    virtual int CCL_API getCurrentDepth () const = 0;

Detailed Documentation

Methods

virtual ITextBuilder*CCL_API createHtmlBuilder () = 0

Create text block builder for HTML.

virtual tresult CCL_API pushMetaElement (
    StringRef name,
    StringRef content,
    tbool isHttpEquiv
) = 0

Push <meta> element to be written inside HTML <head>.

virtual tresult CCL_API pushStyleElement (StringRef cssContent) = 0

Push <style> element to be written inside HTML <head>.

virtual tresult CCL_API writeHead (StringRef title) = 0

Write <head></head> including <title> and all previously pushed meta elements.