tree 2e394afc602762f4380ba17519fed1f861ded1bc
parent f60c7ce9c4313e47d33944e96df51eda27cd4cba
author Gabriela Gibson <gbg@apache.org> 1432336872 +0100
committer Gabriela Gibson <gbg@apache.org> 1432336872 +0100

Tables, headers, lists, bold, italic, underline.

Tables, headers and lists are working albeit in a very rudimentary
fashion.

Regards bold, italic and underline, nothing is what I expected --
everything seems to be out of sync.

I expected a node list of the shape:

HTML_I
DOM_TEXT
HTML_B
DOM_TEXT
...

Where I am assuming that eventually the HTML tag is used to wrap the
next DOM_TEXT up, with something of the shape like:
<i>DOM_TEXT</i>
<b>DOM_TEXT</b>
...

But nodes get produced that do not seem to have this ordering.

-----------------------------------------------------------
Code changes:
-----------------------------------------------------------

  Personal small samples this code should cover (mostly):

* sample/documents/odf/Table.odt
* sample/documents/odf/bold-italic-underlined.odt
* sample/documents/odf/headers.odt
* sample/documents/odf/lists.odt

* .gitignore
  Add emacs and patch exclusions.

* CMakeLists.txt
  Add -DCOLOR=1 to gcc cmd, so I can read the long output easier.
  Colors will be removed again, but it makes it much easier to spot
  things (for me)

* DocFormats/core/src/xml/DFNameMap.c

  Reason: Needed to access DFNameMap but could not do so because it
  was defined inside this file.  Move to the header file.

  (HASH_TABLE_SIZE): Remove.
  (DFNameEntry): Remove.
  (DFNameHashTable): Remove.
  (DFNameMap): Remove.

* DocFormats/core/src/xml/DFNameMap.h
  (HASH_TABLE_SIZE): Add.
  (DFNameEntry): Add.
  (DFNameHashTable): Add.
  (DFNameMap): Add..

* DocFormats/filters/odf/CMakeLists.txt
  (set): Add temporary color.* files.

* DocFormats/filters/odf/src/text/ODFText.c
  (ODFTextGet): Put in a better structure.

* DocFormats/filters/odf/src/text/color.h
* DocFormats/filters/odf/src/text/color.c

  ANSI colors for easier debugging of long lists of text.

* DocFormats/filters/odf/src/text/gbg_test.c
  (#include) "DFNameMap.h"

  (find_HTML): Add lots of switch cases and a structure that reports
    missing tags and prints them as ready code to stdout.

  (show_nodes): dev tool -- print all the nodes.

  (print_node_info): dev tool -- print everything possible about a node.

  (node_id_info): dev tool -- print minimalist info about a node.

  (missing_tag_info): dev tool -- create minimalist char* about a
    missing node.

  (print_line): dev tool -- 3 styles of printed lines, to make
     recognition easier.

* DocFormats/filters/odf/src/text/gbg_test.h

  (#define) TAG_NOT_FOUND:   New tag that has never been seen before.
            TAG_NOT_MATCHED: Known tag that has no HTML match yet.

  (various): prototype definitions for gbg_test.c
