X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=sym.c;h=c9780198d1e017fed75168292cd705c6e406d379;hb=refs%2Fheads%2Flabelling;hp=00d89416b3e798d4ce3f16405e2d420847771aaa;hpb=44b0ec8816c3cf1a5858fec0c51e075cedefc3eb;p=leo.git diff --git a/sym.c b/sym.c index 00d8941..c978019 100644 --- a/sym.c +++ b/sym.c @@ -146,3 +146,24 @@ void sym_draw_all(struct svg *svg) for (uns i = 0; i < GARY_SIZE(sym_planned); i++) sym_draw(sym_planned[i].sym, sym_planned[i].zindex, svg); } + +struct symbol * sym_copy(struct symbol *sym) +{ + ASSERT(sym->type && sym->type < SYMBOLIZER_MAX); + if (symbolizers[sym->type]->copy) + return symbolizers[sym->type]->copy(sym); + else + return NULL; +} + +bool sym_look_same(struct symbol *s1, struct symbol *s2) +{ + if (s1->type != s2->type) + return false; + + ASSERT(s1->type && s1->type < SYMBOLIZER_MAX); + if (symbolizers[s1->type]->look_same) + return symbolizers[s1->type]->look_same(s1, s2); + else + return false; +}