class krySubWriterSSA : public krySubWriter, public krySubSSA { public: krySubWriterSSA(kryScript *script, char *filename = NULL); char *WriteScript(); void EnableFormatScript(); void EnableDoubleSpace(); void EnableFormatCSV(); protected: void WriteProperty(char *property, gboolean write_if_empty = TRUE); void WriteStyles(GList *columns); void WriteEvents(GList *columns); private: void ComputeColumnFormats(GList *columns); void ComputeColumnWidths(GList *columns, void *data); void ComputeColumnWidthsStyles(GList *columns, kryList *styles); void ComputeColumnWidthsEvents(GList *columns, kryList *events); void WriteProperties(); void WriteColumnHeaders(GList *columns); void WriteRowData(GList *columns, void *data); void WriteRowDataStyles(GList *columns, kryList *styles); void WriteRowDataEvents(GList *columns); gboolean m_format_script; gboolean m_double_space; gboolean m_format_csv; };