Completed
Pull Request — master (#22)
by Oleg
01:36
created

sdoc.sdoc2.formatter.html.ItemHtmlFormatter   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 30
Duplicated Lines 0 %
Metric Value
dl 0
loc 30
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A generate() 0 11 1
A generate_chapter() 0 12 2
1
"""
2
SDoc
3
4
Copyright 2016 Set Based IT Consultancy
5
6
Licence MIT
7
"""
8
# ----------------------------------------------------------------------------------------------------------------------
9
from sdoc.sdoc2 import node_store
10
from sdoc.sdoc2.formatter.html.HtmlFormatter import HtmlFormatter
11
12
13
class ItemHtmlFormatter(HtmlFormatter):
14
    """
15
    HtmlFormatter for generating HTML code for items.
16
    """
17
    # ------------------------------------------------------------------------------------------------------------------
18
    def generate(self, node, file):
19
        """
20
        Generates the HTML code for an item node.
21
22
        :param sdoc.sdoc2.node.ItemNode.ItemNode node: The item node.
23
        :param file file: The output file.
24
        """
25
        file.write('<li>')
26
        node.prepare_content_tree()
27
        super().generate(node, file)
28
        file.write('</li>')
29
30
    # ------------------------------------------------------------------------------------------------------------------
31
    def generate_chapter(self, node, file):
32
        """
33
        Generates the HTML code for an item node.
34
35
        :param sdoc.sdoc2.node.ItemNode.ItemNode node: The item node.
36
        :param file file: The output file.
37
        """
38
        if file:
39
            file.write('<li>')
40
            node.prepare_content_tree()
41
            super().generate_chapter(node, file)
42
            file.write('</li>')
43
44
45
# ----------------------------------------------------------------------------------------------------------------------
46
node_store.register_formatter('item', 'html', ItemHtmlFormatter)
47