Graphviz 13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
htmltable.h File Reference
#include <cgraph/list.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
Include dependency graph for htmltable.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  htextspan_t
 
struct  htmltxt_t
 
struct  htmlimg_t
 
struct  htmlstyle_t
 
struct  htmldata_t
 
struct  row_t
 
struct  htmltbl_t
 
struct  htmllabel_t
 
struct  htmlcell_t
 
struct  htmlenv_t
 

Macros

#define FIXED_FLAG   1
 
#define HALIGN_RIGHT   (1 << 1)
 
#define HALIGN_LEFT   (1 << 2)
 
#define HALIGN_MASK   (HALIGN_RIGHT | HALIGN_LEFT)
 
#define HALIGN_TEXT   HALIGN_MASK
 
#define VALIGN_TOP   (1 << 3)
 
#define VALIGN_BOTTOM   (1 << 4)
 
#define VALIGN_MASK   (VALIGN_TOP | VALIGN_BOTTOM)
 
#define BORDER_SET   (1 << 5)
 
#define PAD_SET   (1 << 6)
 
#define SPACE_SET   (1 << 7)
 
#define BALIGN_RIGHT   (1 << 8)
 
#define BALIGN_LEFT   (1 << 9)
 
#define BALIGN_MASK   (BALIGN_RIGHT | BALIGN_LEFT)
 
#define BORDER_LEFT   (1 << 10)
 
#define BORDER_TOP   (1 << 11)
 
#define BORDER_RIGHT   (1 << 12)
 
#define BORDER_BOTTOM   (1 << 13)
 
#define BORDER_MASK   (BORDER_LEFT|BORDER_TOP|BORDER_RIGHT|BORDER_BOTTOM)
 
#define UNSET_ALIGN   0
 

Typedefs

typedef struct htmlcell_t htmlcell_t
 
typedef struct htmltbl_t htmltbl_t
 

Enumerations

enum  label_type_t { HTML_UNSET = 0 , HTML_TBL , HTML_TEXT , HTML_IMAGE }
 

Functions

static void free_ritem (row_t *p)
 Free row. This closes and frees row’s list, then the item itself is freed.
 
htmllabel_tparseHTML (char *, int *, htmlenv_t *)
 
int make_html_label (void *obj, textlabel_t *lp)
 Return non-zero if problem parsing HTML. In this case, use object name.
 
void emit_html_label (GVJ_t *job, htmllabel_t *lp, textlabel_t *)
 
void free_html_label (htmllabel_t *, int)
 
void free_html_data (htmldata_t *)
 
void free_html_text (htmltxt_t *)
 
boxfhtml_port (node_t *n, char *pname, unsigned char *sides)
 

Macro Definition Documentation

◆ BALIGN_LEFT

#define BALIGN_LEFT   (1 << 9)

Definition at line 36 of file htmltable.h.

◆ BALIGN_MASK

#define BALIGN_MASK   (BALIGN_RIGHT | BALIGN_LEFT)

Definition at line 37 of file htmltable.h.

◆ BALIGN_RIGHT

#define BALIGN_RIGHT   (1 << 8)

Definition at line 35 of file htmltable.h.

◆ BORDER_BOTTOM

#define BORDER_BOTTOM   (1 << 13)

Definition at line 41 of file htmltable.h.

◆ BORDER_LEFT

#define BORDER_LEFT   (1 << 10)

Definition at line 38 of file htmltable.h.

◆ BORDER_MASK

#define BORDER_MASK   (BORDER_LEFT|BORDER_TOP|BORDER_RIGHT|BORDER_BOTTOM)

Definition at line 42 of file htmltable.h.

◆ BORDER_RIGHT

#define BORDER_RIGHT   (1 << 12)

Definition at line 40 of file htmltable.h.

◆ BORDER_SET

#define BORDER_SET   (1 << 5)

Definition at line 32 of file htmltable.h.

◆ BORDER_TOP

#define BORDER_TOP   (1 << 11)

Definition at line 39 of file htmltable.h.

◆ FIXED_FLAG

#define FIXED_FLAG   1

Definition at line 24 of file htmltable.h.

◆ HALIGN_LEFT

#define HALIGN_LEFT   (1 << 2)

Definition at line 26 of file htmltable.h.

◆ HALIGN_MASK

#define HALIGN_MASK   (HALIGN_RIGHT | HALIGN_LEFT)

Definition at line 27 of file htmltable.h.

◆ HALIGN_RIGHT

#define HALIGN_RIGHT   (1 << 1)

Definition at line 25 of file htmltable.h.

◆ HALIGN_TEXT

#define HALIGN_TEXT   HALIGN_MASK

Definition at line 28 of file htmltable.h.

◆ PAD_SET

#define PAD_SET   (1 << 6)

Definition at line 33 of file htmltable.h.

◆ SPACE_SET

#define SPACE_SET   (1 << 7)

Definition at line 34 of file htmltable.h.

◆ UNSET_ALIGN

#define UNSET_ALIGN   0

Definition at line 44 of file htmltable.h.

◆ VALIGN_BOTTOM

#define VALIGN_BOTTOM   (1 << 4)

Definition at line 30 of file htmltable.h.

◆ VALIGN_MASK

#define VALIGN_MASK   (VALIGN_TOP | VALIGN_BOTTOM)

Definition at line 31 of file htmltable.h.

◆ VALIGN_TOP

#define VALIGN_TOP   (1 << 3)

Definition at line 29 of file htmltable.h.

Typedef Documentation

◆ htmlcell_t

typedef struct htmlcell_t htmlcell_t

Definition at line 103 of file htmltable.h.

◆ htmltbl_t

typedef struct htmltbl_t htmltbl_t

Definition at line 104 of file htmltable.h.

Enumeration Type Documentation

◆ label_type_t

Enumerator
HTML_UNSET 
HTML_TBL 
HTML_TEXT 
HTML_IMAGE 

Definition at line 101 of file htmltable.h.

Function Documentation

◆ emit_html_label()

void emit_html_label ( GVJ_t job,
htmllabel_t lp,
textlabel_t tp 
)
extern

Definition at line 745 of file htmltable.c.

References agget(), allocObj(), textfont_t::color, htmltbl_t::data, DEFAULT_COLOR, GVC_s::defaultlinestyle, emit_html_tbl(), emit_html_txt(), htmlenv_t::finfo, textlabel_t::fontcolor, textlabel_t::fontname, textlabel_t::fontsize, free(), freeObj(), GVJ_s::gvc, gvrender_set_pencolor(), gvrender_set_style(), heightOfLbl(), HTML_TBL, obj_state_s::id, htmlenv_t::imgscale, htmllabel_t::kind, obj_state_s::n, textfont_t::name, NULL, GVJ_s::obj, htmlenv_t::objid, htmlenv_t::objid_set, htmldata_t::pencolor, htmlenv_t::pos, textlabel_t::pos, textfont_t::size, textlabel_t::space, htmllabel_t::tbl, htmllabel_t::txt, htmllabel_t::u, obj_state_s::u, textlabel_t::valign, and pointf_s::y.

Referenced by emit_label().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_html_data()

void free_html_data ( htmldata_t dp)
extern

Definition at line 792 of file htmltable.c.

References htmldata_t::bgcolor, free(), htmldata_t::href, htmldata_t::id, htmldata_t::pencolor, htmldata_t::port, htmldata_t::target, and htmldata_t::title.

Referenced by cleanCell(), cleanTbl(), free_html_cell(), and free_html_tbl().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_html_label()

void free_html_label ( htmllabel_t lp,
int  root 
)
extern

Definition at line 864 of file htmltable.c.

References free(), free_html_img(), free_html_tbl(), free_html_text(), HTML_IMAGE, HTML_TBL, htmllabel_t::img, htmllabel_t::kind, htmllabel_t::tbl, htmllabel_t::txt, and htmllabel_t::u.

Referenced by cleanup(), cleanup(), free_html_cell(), and free_label().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_html_text()

void free_html_text ( htmltxt_t t)
extern

Definition at line 803 of file htmltable.c.

References free(), textspan_t::free_layout, htextspan_t::items, textspan_t::layout, htextspan_t::nitems, htmltxt_t::nspans, htmltxt_t::spans, and textspan_t::str.

Referenced by cleanCell(), and free_html_label().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_ritem()

static void free_ritem ( row_t p)
inlinestatic

Definition at line 119 of file htmltable.h.

References free(), and htmltbl_t::p.

Here is the call graph for this function:

◆ html_port()

boxf * html_port ( node_t n,
char *  pname,
unsigned char *  sides 
)
extern

Definition at line 919 of file htmltable.c.

References htmldata_t::box, HTML_TEXT, htmllabel_t::kind, ND_label, NULL, portToTbl(), htmldata_t::sides, streq(), htmllabel_t::tbl, and htmllabel_t::u.

Referenced by poly_port().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ make_html_label()

int make_html_label ( void *  obj,
textlabel_t lp 
)
extern

◆ parseHTML()

htmllabel_t * parseHTML ( char *  txt,
int *  warn,
htmlenv_t env 
)
extern

Definition at line 2379 of file htmlparse.c.

References agxbfree(), clearHTMLlexer(), htmlenv_t::g, GD_gvc, htmlparse(), initHTMLlexer(), NULL, scanner, and str.

Referenced by make_html_label().

Here is the call graph for this function:
Here is the caller graph for this function: