Technical Overview |
Here are some details on how Fabula was built using Mozilla. The majority of the code is 'chrome' files, but we had to hack into the layout engine to get the Editor to 'edit' our tags.
Therefore, we have to have a custom build and the distribution for Fabula is in effect a full Mozilla binary.
It should be a goal to move away from this approach, so we can distribute Fabula as a package bundled as an XPI to load on any version of Mozilla. This is already possible for the Reader but might be tricky for the Maker (editing Fabula tags).
For more details of extending the layout engine, please go here.
DISCLAIMER: This approach is not for the faint hearted. I would only recommend it if you really, really need to do it and see no other solution. There coould be a more XML based approach to what you need to do, especially as Mozilla is very XML aware. What would be very nice would be if the Mozilla Editor evolved to output XML.