Giter Club home page Giter Club logo

mscgen_js's People

Contributors

dependabot[bot] avatar donroyco avatar sverweij avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mscgen_js's Issues

arc*color support for entities

  • store the colors in a hash map
  • either update arcs in the parse tree with the stored colors, or look up the colors during rendering
  • arclinecolor
  • arctextcolor
  • arctextbgcolor

Support for ID attribute

maybe first complete #3? If foreignObject/ HTML is the chosen route there ID and IDURL will be fairly simple to implement.

mscgen_js does not work in internet explorer < 9

In microsoft internet explorer, at least up until and including version 8, mscgen_js is only able to do do syntax checking. It will, however, not render a sequence chart.

From experience I know that supporting internet explorer and, in particular, more early versions can take up a lot of time. As my time is limited, and the target users of msgen_js are likely to have other browsers at their disposal, I decided to make no attempt at supporting IE.

I read that from version 9 and up internet explorer supports svg, so msgen_js could work there. I have not verified whether this actually is the case.

Opera: arc/ diagram disappear when adding text to the arc

a => b;: no problem
a => b: some text;: arc & entities disappear.
Opera only (tested in 12.16)

probably the problem is in this for the thing that renders the background of the text:

<rect width="-Infinity" height="-Infinity" x="3.4028234663852886e+38" y="3.4028234663852886e+38" class="textbg"/>

Which suggests getBBox isn't working well in Opera.

B.t.w. the .png and .jpeg rendered through canvg look fine.
Update 20131111: canvg rendering is also kaput

width support: room for improvement

This input

width=600;
a => b;

generates this output
w600

'nuff said. Small sizes look even worse:
60

Without the width statement it looks like this, which is a lot better:
index

Improve emphasis arc (:>, <:, <:>, ::) support

Currently emphasis arcs are renedered with a red line and closed arrows. mscgen standard implementation is a double line (<===========>)

  • make special case for ":" arcs and save in boolean
  • make createDoubleLine function in utensils
  • if special case true createDoubleLine i.o. createLine

smpl: broadcast arcs with labels don't work

input

a,b,c,d;
a=>c: do something ;
*<<=c : this does work ;
c=>>*; # this works too
c=>>* : this doesn't ;
b>>a: it's working ;

expected
Diagram gets rendered.

found
Error message: 'undefined' is not an object.

analysis
The broadcast arc labeled _this doesn't _ generates this message.

Explicitly handle non-parser errors

current situation
"Cannot convert pX2 to object." When referencing a non-existing entity.

  • Should be something like "Entity 'yadda' is not defined"

"Cannot convert pEntoties to object." When no entity defined

  • Should be something like "No entities defined"

backwards arcs don't get arc*colored correctly

steps taken

msc {
1,2[arclinecolor="blue"],3;
1=>>2;
2:>3 [label="colored blue"];
2=>>* [label="colored blue", arcskip="1"];
|||;
*<<=2 [label="colored blue", arcskip="1", id="bug"];
|||;
2<<=3 [label="colored black", id="bug"];
}

expected
lines labeled as "colored blue" are colored blue, those "colored black" colored black.

found
the arcs labeled with id="bug" have a different color
screen shot 2013-07-10 at 23 11 28

color the arrow heads same as the associated line

Arrowheads stay black right now. Probably because the programatic style override is set on the line only.
Will setting it on group level help?
Does a css property exist for formatting marker-ends && starts?

Relation with issue #14?

Support for IDURL attribute

maybe first complete #3? If foreignObject/ HTML is the chosen route there ID and IDURL will be fairly simple to implement.

Arrows on signal arcs not always bottom

a -> b renders the arrow on the bottom (ok)
b -> a renders the arrow on top (nok)
a <-> b renders both arrows bottom (ok)
b <-> a renders both arrows on top (nok)
a -> a renders the arrow on top (nok)
a <-> a renders the first arrow bottom (ok) the second on top (nok)

Auto wrap

Target: when text is longer than horizontal the space it fits in, mscgen_js automatically wraps it.

  • algorithm
  • only wrap non box'ish arcs when the wordwraparcs option = true

Automatically adjust arc row hight

Current: the hight of an arc row is fixed.
Target: the hight of an arc row is just a tad bigger than the largest hight of any of its arcs.

node names also occuring as ids in html not rendered

Steps taken
use this as input:

  msc {
   render , error_output, textcopylightbox;
  }

expected
Three entities are rendered with render, error_output and textcopylightbox as labels

found
The entities were rendered, but labels and entity boxes are not shown.
The textcopylightbox entity gets shown when you click "show svg", but the svg isn't shown in these cases ...

analysis
these specific entity names are equal to html elements elsewhere on the page that are usually not displayed because of a display:none css styling rule. Ideally the css rules for the surrounding html should be written in such a way that the svg tree is never affected.

automate build

  • split source and deployable code
  • split lib from src
  • peg node modules
  • peg web modules
  • funky foo to reuse parsetree2x node modules in web version
  • r.js for js
  • r.js for css

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.