/* * GPAC - Multimedia Framework C SDK * * Copyright (c) Cyril Concolato 2004-2005 * All rights reserved * * This file is part of GPAC / SVG Scene Graph Generator sub-project * * GPAC is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * GPAC is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; see the file COPYING. If not, write to * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. * */ #include "svggen.h" static FILE *BeginHtml() { FILE *f; char sPath[GF_MAX_PATH]; sprintf(sPath, "C:%cUsers%cCyril%ccontent%csvg%cregression%cregression_table.html", GF_PATH_SEPARATOR, GF_PATH_SEPARATOR, GF_PATH_SEPARATOR, GF_PATH_SEPARATOR, GF_PATH_SEPARATOR, GF_PATH_SEPARATOR); f = fopen(sPath, "wt"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "Status of the SVG implementation in GPAC\n"); { time_t rawtime; time(&rawtime); fprintf(f, "\n\n", asctime(gmtime(&rawtime)), GPAC_VERSION); } fprintf(f, "\n", COPYRIGHT); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "

Status of the SVG implementation in GPAC

\n"); return f; } static void EndHtml(FILE *f) { fprintf(f, "\n"); fprintf(f, "\n"); fclose(f); } /* Generates an HTML table */ void generate_table(GF_List *elements) { u32 i, j; u32 nbExamples = 0; FILE *f; f = BeginHtml(); fprintf(f, "

Legend

\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "
StatusColor
Not supported
Partially supported
Fully supported
\n"); fprintf(f, "

SVG Tiny 1.2 Elements

\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); for (i = 0; i < gf_list_count(elements); i++) { SVGGenElement *elt = gf_list_get(elements, i); fprintf(f, "\n", elt->implementation_name); fprintf(f, "\n", elt->svg_name, elt->svg_name); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); } fprintf(f, "\n"); fprintf(f, "
Element NameStatusObservationsExample(s)Bug(s)
%s   
\n"); for (i = 0; i < gf_list_count(elements); i++) { SVGGenElement *elt = gf_list_get(elements, i); fprintf(f, "

%s

\n", elt->implementation_name, elt->svg_name); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n"); for (j = 0; j < gf_list_count(elt->attributes); j++) { SVGGenAttribute *att = gf_list_get(elt->attributes, j); if (!strcmp(att->svg_name, "textContent")) continue; fprintf(f, "\n"); fprintf(f, "\n",att->svg_name); fprintf(f, "\n"); fprintf(f, "\n"); fprintf(f, "\n",++nbExamples); fprintf(f, "\n"); fprintf(f, "\n"); } fprintf(f, "\n"); fprintf(f, "
Attribute NameStatusObservationsExample(s)Bug(s)
%s %d -   
\n"); } EndHtml(f); gf_list_del(elements); }