icyphy / ptII

Ptolemy II is an open-source software framework supporting experimentation with actor-oriented design.
https://ptolemy.eecs.berkeley.edu/ptolemyII
Other
99 stars 43 forks source link

HTMLPageAssembler #313

Open cxbrooks opened 12 years ago

cxbrooks commented 12 years ago

Note: the issue was created automatically with bugzilla2github tool

Original bug ID: BZ#516 From: Elizabeth Latronico <beth@berkeley.edu> Reported version: 9.1.devel CC: ptango@chess.eecs.berkeley.edu

Blocker for: BZ#515

cxbrooks commented 12 years ago

HTMLPageAssembler

-----Original Message----- From: Edward A. Lee [mailto:eal@ eecs.berkeley.edu] Sent: Tuesday, June 12, 2012 12:00 PM To: Latronico Elizabeth (CR/RTC3.1-NA) Cc: ptango@ chess.eecs.berkeley.edu Subject: Re: [Ptango] Web server open issues

I think the way to deal with (8) is:

 Enhance the "export to web" capability (and hence the
 HTMLModelExporter actor) to have a "templatePage"
 parameter. If provided, this template page should
 provide <div id="..."> ... </div> blocks
 and the web exporter will put things there.
 A template should include at least ids end, head,
 and start, probably, although we can just say that
 if you use a template that does not include these,
 then those parts of the HTML will not be generated.

 This requires changing the HTMLTextPosition
 attribute, which currently says:

I can tackle the above... I think the write way to do it is with JavaScript, not with line-by-line parsing parsing of the HTML template, as currently done in HttpCompositeServiceProvider. An alternative would be to put in a full HTML parser, which might actually be a cleaner solution. I'm not sure, but I suspect that this will require the template to be not just HTML, but also proper XML (meaning, for example, that every

has to be terminated with a

).

Actually, if we take the HTML parser approach, then we can provide another actor:

HTMLPageAssembler: Create input ports with arbitrary names, say "foo", and provide a template HTML with, say,

, and the actor inserts the string provided on input foo into the
block.

The code for this actor could then be reused by the Export to Web infrastructure.

Thoughts about this?

Edward