You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(7) |
Aug
(1) |
Sep
|
Oct
(3) |
Nov
(39) |
Dec
(16) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(8) |
Feb
|
Mar
(1) |
Apr
(19) |
May
(23) |
Jun
(36) |
Jul
(4) |
Aug
(6) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <fun...@us...> - 2003-08-05 20:12:46
|
Update of /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images In directory sc8-pr-cvs1:/tmp/cvs-serv17848/src/documentation/skins/sheets-site/images Added Files: background.png Log Message: --- NEW FILE: background.png --- (This appears to be a binary file; contents omitted.) |
|
From: <fun...@us...> - 2003-08-05 20:02:31
|
Update of /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/xslt/html In directory sc8-pr-cvs1:/tmp/cvs-serv17082/src/documentation/skins/sheets-site/xslt/html Modified Files: book2menu.xsl document2html.xsl site2xhtml.xsl tab2menu.xsl Log Message: website update Index: book2menu.xsl =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/xslt/html/book2menu.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** book2menu.xsl 6 Dec 2002 12:54:45 -0000 1.2 --- book2menu.xsl 5 Aug 2003 20:02:28 -0000 1.3 *************** *** 1,9 **** <?xml version="1.0"?> <!-- ! book2menu.xsl generates the HTML menu. It outputs XML/HTML of the form: ! <div class="menu"> ! ... ! </div> ! which is then merged with other HTML by site2xhtml.xsl $Id$ --- 1,6 ---- <?xml version="1.0"?> <!-- ! book2menu.xsl generates the HTML menu. See the imported book2menu.xsl for ! details. $Id$ *************** *** 11,23 **** <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - <xsl:param name="path"/> - - <xsl:include href="pathutils.xsl"/> ! <xsl:variable name="filename-noext"> ! <xsl:call-template name="filename-noext"> ! <xsl:with-param name="path" select="$path"/> ! </xsl:call-template> ! </xsl:variable> <xsl:template match="book"> --- 8,13 ---- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ! <xsl:import href="../../../common/xslt/html/book2menu.xsl"/> <xsl:template match="book"> *************** *** 40,66 **** <xsl:template match="menu-item"> <li> ! <xsl:choose> ! <xsl:when test="starts-with(@href, $filename-noext)"> ! <span class="sel"><font color="#ffcc00"><xsl:value-of select="@label"/></font></span> ! </xsl:when> ! <xsl:otherwise> ! <a href="{@href}"><xsl:value-of select="@label"/></a> ! </xsl:otherwise> ! </xsl:choose> </li> </xsl:template> ! <xsl:template match="external"> ! <li> ! <xsl:choose> ! <xsl:when test="starts-with(@href, $filename-noext)"> ! <font color="#ffcc00"><xsl:value-of select="@label"/></font> ! </xsl:when> ! <xsl:otherwise> ! <a href="{@href}" target="_blank"><xsl:value-of select="@label"/></a> ! </xsl:otherwise> ! </xsl:choose> ! </li> </xsl:template> ! <xsl:template match="menu-item[@type='hidden']"/> ! <xsl:template match="external[@type='hidden']"/> </xsl:stylesheet> --- 30,50 ---- <xsl:template match="menu-item"> <li> ! <xsl:apply-imports/> </li> </xsl:template> ! ! <xsl:template name="selected"> ! <span class="sel"> ! <font color="#ffcc00"> ! <xsl:value-of select="@label"/> ! </font> ! </span> </xsl:template> ! ! <xsl:template name="print-external"> ! <font color="#ffcc00"> ! <xsl:apply-imports/> ! </font> ! </xsl:template> ! </xsl:stylesheet> Index: document2html.xsl =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/xslt/html/document2html.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** document2html.xsl 6 Dec 2002 12:54:45 -0000 1.2 --- document2html.xsl 5 Aug 2003 20:02:28 -0000 1.3 *************** *** 15,50 **** <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ! <!-- If non-blank, a PDF link for this page will not be generated --> ! <xsl:param name="nopdf"/> ! <xsl:param name="isfaq"/> ! <xsl:param name="path"/> ! ! <xsl:include href="split.xsl"/> ! <xsl:include href="dotdots.xsl"/> ! <xsl:include href="pathutils.xsl"/> ! ! <!-- Path to site root, eg '../../' --> ! <xsl:variable name="root"> ! <xsl:call-template name="dotdots"> ! <xsl:with-param name="path" select="$path"/> ! </xsl:call-template> ! </xsl:variable> ! ! <xsl:variable name="filename-noext"> ! <xsl:call-template name="filename-noext"> ! <xsl:with-param name="path" select="$path"/> ! </xsl:call-template> ! </xsl:variable> ! ! <xsl:variable name="skin-img-dir" select="concat(string($root), 'skin/images')"/> <xsl:template match="document"> ! <!-- ! <xsl:message> ! ## path = <xsl:value-of select="$path"/> ! ## root = <xsl:value-of select="$root"/> ! ## nopdf = '<xsl:value-of select="$nopdf"/>' ! </xsl:message> ! --> <div class="content"> <xsl:if test="normalize-space(header/title)!=''"> --- 15,22 ---- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ! <xsl:import href="../../../common/xslt/html/document2html.xsl"/> <xsl:template match="document"> ! <div class="content"> <xsl:if test="normalize-space(header/title)!=''"> *************** *** 56,69 **** </h1> </td> ! <!--td align="center" width="80" nowrap><a href="" class="dida"><img src="images/singlepage.gif"><br> ! single page<br> ! version</a></td--> ! <xsl:if test="$nopdf = ''"> <!-- nopdf flag unset --> ! <td align="center" width="80" nowrap="nowrap"><a href="{$filename-noext}.pdf" class="dida"> ! <img border="0" src="{$skin-img-dir}/printer.png"/><br/> ! print-friendly<br/> ! version</a> ! </td> ! </xsl:if> </tr> </table> --- 28,36 ---- </h1> </td> ! <!-- ! <xsl:call-template name="printerfriendlylink"/> ! <xsl:call-template name="xmllink"/> ! --> ! <xsl:call-template name="pdflink"/> </tr> </table> *************** *** 76,81 **** <xsl:apply-templates select="body"/> ! ! <xsl:if test="header/authors"> <p align="right"> <font size="-2"> --- 43,48 ---- <xsl:apply-templates select="body"/> ! ! <xsl:if test="header/authors"> <p align="right"> <font size="-2"> *************** *** 90,94 **** </p> </xsl:if> ! </div> </xsl:template> --- 57,61 ---- </p> </xsl:if> ! </div> </xsl:template> *************** *** 96,104 **** <xsl:template match="body"> ! <xsl:if test="section and not($isfaq='true')"> <toc> <xsl:for-each select="section"> <tocc> ! <toca href="#{generate-id()}"> <xsl:value-of select="title"/> </toca> --- 63,74 ---- <xsl:template match="body"> ! <xsl:if test="section and not($notoc='true')"> <toc> <xsl:for-each select="section"> <tocc> ! <toca> ! <xsl:attribute name="href"> ! <xsl:text>#</xsl:text><xsl:call-template name="generate-id"/> ! </xsl:attribute> <xsl:value-of select="title"/> </toca> *************** *** 107,111 **** <xsl:for-each select="section"> <tocc> ! <toca href="#{generate-id()}"> <xsl:value-of select="title"/> </toca> --- 77,84 ---- <xsl:for-each select="section"> <tocc> ! <toca> ! <xsl:attribute name="href"> ! <xsl:text>#</xsl:text><xsl:call-template name="generate-id"/> ! </xsl:attribute> <xsl:value-of select="title"/> </toca> *************** *** 118,163 **** </toc> </xsl:if> - <!-- - <xsl:if test="section and not($isfaq='true')"> - <ul class="minitoc"> - <xsl:for-each select="section"> - <li> - <a href="#{generate-id()}"> - <xsl:value-of select="title"/> - </a> - <xsl:if test="section"> - <ul class="minitoc"> - <xsl:for-each select="section"> - <li> - <a href="#{generate-id()}"> - <xsl:value-of select="title"/> - </a> - </li> - </xsl:for-each> - </ul> - </xsl:if> - </li> - </xsl:for-each> - </ul> - </xsl:if> - --> <xsl:apply-templates/> </xsl:template> ! <!-- section handling ! - <a name/> anchors are added if the id attribute is specified ! - generated anchors are still included for TOC - what should we do about this? ! - FIXME: provide a generic facility to process section irrelevant to their ! nesting depth ! --> <xsl:template match="@id"> ! <xsl:if test="normalize-space(.)!=''"> ! <a> ! <xsl:attribute name="name"> ! <xsl:value-of select="."/> ! </xsl:attribute> ! </a> ! </xsl:if> </xsl:template> --- 91,110 ---- </toc> </xsl:if> <xsl:apply-templates/> </xsl:template> ! <xsl:template name="generate-id"> ! <xsl:choose> ! <xsl:when test="@id"> ! <xsl:value-of select="@id"/> ! </xsl:when> ! <xsl:otherwise> ! <xsl:value-of select="generate-id(.)"/> ! </xsl:otherwise> ! </xsl:choose> ! </xsl:template> <xsl:template match="@id"> ! <xsl:apply-imports/> </xsl:template> *************** *** 165,357 **** <a name="{generate-id()}"/> <xsl:apply-templates select="@id"/> - - <xsl:variable name = "level" select = "count(ancestor::section)+1" /> - - <xsl:choose> - <xsl:when test="$level=1"> ! <table cellpadding="0" cellspacing="0" border="0" width="100%"> ! <tbody> ! <tr> ! <td width="9" height="10"></td> ! <td><h3><xsl:value-of select="title"/></h3></td> ! <td></td> ! </tr> ! <tr> ! <td class="bottom-left-thick"></td> ! <td bgcolor="#a5b6c6"></td> ! <td class="bottom-right-thick"></td> ! </tr> ! ! </tbody> ! </table> ! ! <div class="section"><xsl:apply-templates/></div> ! ! </xsl:when> ! <xsl:when test="$level=2"> ! <table cellpadding="0" cellspacing="0" border="0"> ! <tbody> ! <tr> ! <td width="9" height="10"></td> ! <td><h4><xsl:value-of select="title"/></h4></td> ! <td></td> ! </tr> ! <tr> ! <td class="bottom-left"></td> ! <td bgcolor="#a5b6c6"></td> ! <td class="bottom-right"></td> ! </tr> ! ! </tbody> ! </table> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </xsl:when> ! <xsl:when test="$level=3"> ! <h4><xsl:value-of select="title"/></h4> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </xsl:when> ! <xsl:otherwise> ! <h5><xsl:value-of select="title"/></h5> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:template> ! ! <xsl:template match="fixme | note | warning"> ! <xsl:apply-templates select="@id"/> ! <div class="{local-name()}"> ! <p><strong> ! <xsl:choose> ! <xsl:when test="local-name() = 'note'">Note</xsl:when> ! <xsl:when test="local-name() = 'warning'">Warning</xsl:when> ! <xsl:otherwise>Fixme ( ! <xsl:value-of select="@author"/> ! )</xsl:otherwise> ! </xsl:choose> ! </strong></p> ! <p><xsl:apply-templates/></p> ! </div> ! </xsl:template> ! ! <!-- ! <xsl:template match="fixme | note | warning "> ! <xsl:apply-templates select="@id"/> ! <div class="frame {local-name()}"> ! <div class="label"> ! <xsl:choose> ! <xsl:when test="local-name() = 'note'">Note</xsl:when> ! <xsl:when test="local-name() = 'warning'">Warning</xsl:when> ! <xsl:otherwise>Fixme ( ! <xsl:value-of select="@author"/> ! )</xsl:otherwise> ! </xsl:choose> ! </div> ! <div class="content"> ! <xsl:apply-templates/> ! </div> ! </div> </xsl:template> ! --> <xsl:template match="link"> ! <xsl:apply-templates select="@id"/> ! <a href="{@href}"> ! <xsl:apply-templates/> ! </a> </xsl:template> <xsl:template match="jump"> ! <xsl:apply-templates select="@id"/> ! <a href="{@href}" target="_top"> ! <xsl:apply-templates/> ! </a> </xsl:template> <xsl:template match="fork"> ! <xsl:apply-templates select="@id"/> ! <a href="{@href}" target="_blank"> ! <xsl:apply-templates/> ! </a> </xsl:template> <xsl:template match="p[@xml:space='preserve']"> ! <xsl:apply-templates select="@id"/> ! <div class="pre"> ! <xsl:apply-templates/> ! </div> </xsl:template> <xsl:template match="source"> ! <xsl:apply-templates select="@id"/> ! <pre class="code"> ! <!-- Temporarily removed long-line-splitter ... gives out-of-memory problems --> ! <xsl:apply-templates/> ! <!-- ! <xsl:call-template name="format"> ! <xsl:with-param select="." name="txt" /> ! <xsl:with-param name="width">80</xsl:with-param> ! </xsl:call-template> ! --> ! </pre> </xsl:template> <xsl:template match="anchor"> ! <a name="{@id}"/> </xsl:template> <xsl:template match="icon"> ! <xsl:apply-templates select="@id"/> ! <img src="{@src}" alt="{@alt}"> ! <xsl:if test="@height"> ! <xsl:attribute name="height"><xsl:value-of select="@height"/></xsl:attribute> ! </xsl:if> ! <xsl:if test="@width"> ! <xsl:attribute name="width"><xsl:value-of select="@width"/></xsl:attribute> ! </xsl:if> ! </img> </xsl:template> <xsl:template match="code"> ! <xsl:apply-templates select="@id"/> ! <span class="codefrag"><xsl:value-of select="."/></span> </xsl:template> <xsl:template match="figure"> ! <xsl:apply-templates select="@id"/> ! <div align="center"> ! <img src="{@src}" alt="{@alt}" class="figure"> ! <xsl:if test="@height"> ! <xsl:attribute name="height"><xsl:value-of select="@height"/></xsl:attribute> ! </xsl:if> ! <xsl:if test="@width"> ! <xsl:attribute name="width"><xsl:value-of select="@width"/></xsl:attribute> ! </xsl:if> ! </img> ! </div> </xsl:template> <xsl:template match="table"> ! <xsl:apply-templates select="@id"/> ! <table cellpadding="4" cellspacing="1" class="ForrestTable"> ! <xsl:if test="@cellspacing"><xsl:attribute name="cellspacing"><xsl:value-of select="@cellspacing"/></xsl:attribute></xsl:if> ! <xsl:if test="@cellpadding"><xsl:attribute name="cellpadding"><xsl:value-of select="@cellpadding"/></xsl:attribute></xsl:if> ! <xsl:if test="@border"><xsl:attribute name="border"><xsl:value-of select="@border"/></xsl:attribute></xsl:if> ! <xsl:if test="@class"><xsl:attribute name="class"><xsl:value-of select="@class"/></xsl:attribute></xsl:if> ! <xsl:if test="@bgcolor"><xsl:attribute name="bgcolor"><xsl:value-of select="@bgcolor"/></xsl:attribute></xsl:if> ! <xsl:apply-templates/> ! </table> </xsl:template> ! <xsl:template match="node()|@*" priority="-1"> ! <xsl:copy> ! <xsl:apply-templates select="@*"/> ! <xsl:apply-templates/> ! </xsl:copy> </xsl:template> </xsl:stylesheet> --- 112,228 ---- <a name="{generate-id()}"/> <xsl:apply-templates select="@id"/> ! <xsl:variable name = "level" select = "count(ancestor::section)+1" /> ! <xsl:choose> ! <xsl:when test="$level=1"> ! <table cellpadding="0" cellspacing="0" border="0" width="100%"> ! <tbody> ! <tr> ! <td width="9" height="10"></td> ! <td><h3><xsl:value-of select="title"/></h3></td> ! <td></td> ! </tr> ! <tr> ! <td class="bottom-left-thick"></td> ! <td bgcolor="#927762"></td> ! <td class="bottom-right-thick"></td> ! </tr> ! </tbody> ! </table> ! <div class="section"><xsl:apply-templates/></div> ! </xsl:when> ! <xsl:when test="$level=2"> ! ! <table cellpadding="0" cellspacing="0" border="0"> ! <tbody> ! <tr> ! <td width="9" height="10"></td> ! <td><h4><xsl:value-of select="title"/></h4></td> ! <td></td> ! </tr> ! <tr> ! <td class="bottom-left"></td> ! <td bgcolor="#927762"></td> ! <td class="bottom-right"></td> ! </tr> ! ! </tbody> ! </table> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </xsl:when> ! <!-- If a faq, answer sections will be level 3 (1=Q/A, 2=part) --> ! <xsl:when test="$level=3 and $notoc='true'"> ! <h4 class="faq"><xsl:value-of select="title"/></h4> ! <div align="right"><a href="#{@id}-menu">^</a></div> ! <div style="margin-left: 15px"> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </div> ! </xsl:when> ! <xsl:when test="$level=3"> ! <h4><xsl:value-of select="title"/></h4> ! <xsl:apply-templates select="*[not(self::title)]"/> ! ! </xsl:when> ! ! <xsl:otherwise> ! <h5><xsl:value-of select="title"/></h5> ! <xsl:apply-templates select="*[not(self::title)]"/> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:template> ! ! <xsl:template match="fixme | note | warning"> ! <xsl:apply-imports/> </xsl:template> ! <xsl:template match="link"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="jump"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="fork"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="p[@xml:space='preserve']"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="source"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="anchor"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="icon"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="code"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="figure"> ! <xsl:apply-imports/> </xsl:template> <xsl:template match="table"> ! <xsl:apply-imports/> </xsl:template> ! <xsl:template match="title"> ! <!-- do not show title elements, they are already in other places--> </xsl:template> + </xsl:stylesheet> Index: site2xhtml.xsl =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/xslt/html/site2xhtml.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** site2xhtml.xsl 6 Dec 2002 12:54:45 -0000 1.2 --- site2xhtml.xsl 5 Aug 2003 20:02:28 -0000 1.3 *************** *** 21,325 **** <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - <!-- Default skinconf.xml in the skins/ directory --> - <xsl:param name="config-file" select="'../../../../skinconf.xml'"/> - <xsl:variable name="config" select="document($config-file)/skinconfig"/> - <xsl:param name="path"/> - <xsl:include href="dotdots.xsl"/> - <xsl:include href="pathutils.xsl"/> ! <xsl:variable name="root"> ! <xsl:call-template name="dotdots"> ! <xsl:with-param name="path" select="$path"/> ! </xsl:call-template> ! </xsl:variable> ! ! <xsl:variable name="filename"> ! <xsl:call-template name="filename"> ! <xsl:with-param name="path" select="$path"/> ! </xsl:call-template> ! </xsl:variable> ! ! <xsl:variable name="skin-img-dir" select="concat(string($root), 'skin/images')"/> ! <xsl:variable name="spacer" select="concat($root, 'skin/images/spacer.gif')"/> ! <xsl:template match="site"> <html> <head> ! <title><xsl:value-of select="div[@class='content']/table/tr/td/h1"/></title> <link rel="stylesheet" href="{$root}skin/page.css" type="text/css"/> </head> ! <body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> ! <!-- =========================== top line with navigation path ========================== --> ! <!-- <table cellspacing="0" cellpadding="0" border="0" width="100%" summary="navigation path"> ! <tr> ! <td bgcolor="#a5b6c6" valign="middle" nowrap="nowrap"> ! <img src="{$spacer}" border="0" alt="" width="5" height="1" /> ! ! <span class="trail"> ! <script type="text/javascript" language="JavaScript" src="{$root}skin/breadcrumbs.js"></script> </span> ! </td> ! </tr> ! <tr> ! <td height="1" bgcolor="#a5b6c6"><img src="{$spacer}" border="0" alt="" width="2" height="1" /></td> ! </tr> ! </table> ! --> ! <!-- ================================= top bar with logo's and search box =================================== --> <table cellspacing="0" cellpadding="0" border="0" width="100%" summary="header with logos"> ! <tr> ! <td bgcolor="#FFFFFF"> ! <xsl:if test="$config/group-url"><a href="{$config/group-url}"><img src="{$root}{$config/group-logo}" alt="{$config/group-name} logo" border="0"/></a></xsl:if></td> ! <td bgcolor="#FFFFFF" align="center" width="100%"><a href="{$config/project-url}"><img src="{$root}{$config/project-logo}" border="0" alt="{$config/project-name} site" /></a></td> ! <td bgcolor="#FFFFFF" rowspan="2" valign="top"> ! <xsl:if test="not($config/disable-search) or $config/disable-search='false' and $config/searchsite-domain and $config/searchsite-name"> ! <form method="get" action="http://www.google.com/search" onsubmit="q.value = query.value + ' site:{$config/searchsite-domain}'" target="_blank"> ! <table bgcolor="#F7F7F7" cellpadding="0" cellspacing="0" border="0" summary="search"> ! <tr> ! <td colspan="3" bgcolor="#a5b6c6"><img src="{$spacer}" alt="" width="1" height="10" /></td> ! </tr> ! <tr> ! <td colspan="3"><img src="{$spacer}" alt="" width="1" height="8" /></td> ! </tr> ! <tr> ! <td><img src="{$spacer}" alt="" width="1" height="1" /></td> <td nowrap="nowrap"> <input type="hidden" name="q"/> ! <input type="text" id="query" size="15"/><img src="{$spacer}" alt="" width="5" height="1" /><input type="submit" value="Search" name="Search"/> ! <br /> ! <span class="search"> ! the <xsl:value-of select="$config/searchsite-name"/> site <!-- setting search options off for the moment --> <!-- <input type="radio" name="web" value="web"/>web site  <input type="radio" name="mail" value="mail"/>mail lists --> ! </span> </td> - <td><img src="{$spacer}" alt="" width="1" height="1" /></td> </tr> ! <tr> ! <td colspan="3"><img src="{$spacer}" alt="" width="1" height="7" /></td> ! </tr> ! ! ! <tr> ! <td class="bottom-left-thick"></td> ! <td bgcolor="#a5b6c6"><img src="{$spacer}" alt="" width="1" height="1" /></td> ! <td class="bottom-right-thick"></td> ! </tr> ! </table> </form> </xsl:if> ! </td> ! <td bgcolor="#FFFFFF"><img src="{$spacer}" alt="" width="10" height="10" /></td> ! </tr> ! <tr> ! <td colspan="2" bgcolor="#FFFFFF" valign="bottom"> ! <xsl:apply-templates select="div[@class='tab']"/> ! </td> ! <td bgcolor="#FFFFFF"><img src="{$spacer}" height="1" width="1" alt="" /></td> ! </tr> ! <tr><!-- ! <td colspan="4" bgcolor="#a5b6c6" valign="middle" nowrap="nowrap"> ! <img src="{$spacer}" border="0" alt="" width="5" height="1" /> ! ! <span class="trail"> ! <script type="text/javascript" language="JavaScript" src="{$root}skin/breadcrumbs.js"></script> </span> ! </td> ! --> ! <td colspan="4" bgcolor="#a5b6c6"><img src="{$spacer}" alt="" height="10" width="1" /></td> ! </tr> ! </table> ! <!-- ====================================== Menu and Content table ====================================== --> ! <table cellspacing="0" cellpadding="0" border="0" width="100%" bgcolor="#ffffff" summary="page content"> ! <tr> - <td valign="top"> - <table cellpadding="0" cellspacing="0" border="0" summary="menu"> - <tr> - <td valign="top" rowspan="3"> - <table cellspacing="0" cellpadding="0" border="0" summary="blue line"> - <tr><td bgcolor="#a5b6c6"><img src="{$spacer}" alt="" height="1" width="10" /></td></tr> - <tr><td bgcolor="#CFDCED"><font face="Arial, Helvetica, Sans-serif" size="4" color="#4C6C8F"> </font></td></tr> - <tr><td bgcolor="#a5b6c6"><img src="{$spacer}" alt="" height="1" width="10" /></td></tr> - </table> - </td> - <td bgcolor="#a5b6c6" ><img src="{$spacer}" alt="" height="1" width="1" /></td> - <td bgcolor="#F7F7F7" valign="bottom"><img src="{$spacer}" alt="" height="10" width="10" /></td> - <td bgcolor="#F7F7F7" valign="top" nowrap="nowrap"> - - <!-- <xsl:apply-templates select="div[@class='menu']"/> --> ! <div class="menu"><ul> ! <xsl:for-each select = "div[@class='menu']/ul/li"> ! <li><font color="#000000"><xsl:value-of select="font"/></font> ! <ul> ! <xsl:for-each select = "ul/li"> ! ! <xsl:choose> ! <xsl:when test="a"> ! <li><a href="{a/@href}"><xsl:value-of select="a" /></a></li> ! </xsl:when> ! <xsl:otherwise> ! <li> ! <span class="sel"><xsl:value-of select="span" /></span></li> ! <ul> ! <xsl:for-each select = "//toc/tocc"> ! ! <xsl:choose> ! <xsl:when test="string-length(toca)>15"> ! <li><a href="{toca/@href}"><xsl:value-of select="substring(toca,0,15)" />...</a></li> ! </xsl:when> ! <xsl:otherwise> ! <li><a href="{toca/@href}"><xsl:value-of select="toca" /></a></li> ! </xsl:otherwise> ! </xsl:choose> ! ! <ul> ! <xsl:for-each select = "toc2/tocc"> ! ! <xsl:choose> ! <xsl:when test="string-length(toca)>15"> ! <li><a href="{toca/@href}"><xsl:value-of select="substring(toca,0,15)" />...</a></li> ! </xsl:when> ! <xsl:otherwise> ! <li><a href="{toca/@href}"><xsl:value-of select="toca" /></a></li> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:for-each> ! </ul> ! </xsl:for-each> ! </ul> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:for-each> ! </ul> ! </li> ! </xsl:for-each> ! </ul></div> ! </td> ! <td bgcolor="#F7F7F7" valign="bottom"><img src="{$spacer}" alt="" height="10" width="10" /></td> ! <td bgcolor="#a5b6c6"><img src="{$spacer}" alt="" height="1" width="1" /></td> ! </tr> ! <tr> ! <td class="bottom-left-thick" rowspan="2" colspan="2"></td> ! <td bgcolor="#a5b6c6"><img src="{$spacer}" alt="" border="0" width="10" height="10" /></td> ! <td class="bottom-right-thick" rowspan="2" colspan="2"></td> ! </tr> ! <tr> ! <td bgcolor="#a5b6c6" height="1"><img src="{$spacer}" alt="" height="1" width="1" /></td> ! </tr> </table> </td> - ! <td width="100%" valign="top"> ! <table cellspacing="0" cellpadding="0" border="0" width="100%" summary="content"> ! <tr><td bgcolor="#a5b6c6" colspan="4"><img src="{$spacer}" alt="" height="1" width="10" /></td></tr> ! <tr> ! <td bgcolor="#CFDCED" width="10" align="left"><img src="{$spacer}" alt="" height="1" width="10" /></td> ! <td bgcolor="#CFDCED" width="50%" align="left"> ! <!-- ========================================= Page number ===================================== --> ! <span class="trail"> !   ! ! <script type="text/javascript" language="JavaScript" src="{$root}skin/breadcrumbs.js"></script> ! <!-- ! <b>Page 1 of 5</b> ! --> ! </span> ! <img src="{$spacer}" alt="" height="8" width="10" /> ! </td> ! <td bgcolor="#CFDCED" width="50%" align="right"> ! <!-- ====================================== page navigation ===================================== --> ! <font face="Arial, Helvetica, Sans-serif" size="3" color="#4C6C8F"> !   ! <!-- ! <b>« prev  <font size="4">[3]</font>  next »</b> ! --> ! </font> ! <img src="{$spacer}" alt="" height="8" width="10" /> ! </td> ! <td bgcolor="#CFDCED" width="10"><img src="{$spacer}" alt="" height="1" width="10" /></td> ! </tr> ! <tr><td bgcolor="#a5b6c6" colspan="4"><img src="{$spacer}" alt="" height="1" width="10" /></td></tr> ! <tr> ! <td width="10" align="left"><img src="{$spacer}" alt="" height="1" width="10" /></td> ! <td width="100%" align="left"> ! <xsl:apply-templates select="div[@class='content']"/> ! </td> ! <td width="10"><img src="{$spacer}" alt="" height="1" width="10" /></td> ! </tr> ! </table> </td> </tr> - </table> - <!-- footer --> - <table border="0" height="20" width="100%" cellpadding="0" cellspacing="0" summary="footer"> - <tr><td bgcolor="#a5b6c6" height="1" colspan="2"><img src="{$spacer}" alt="" width="1" height="1" /><a href="{$skin-img-dir}/label.gif"></a><a href="{$skin-img-dir}/page.gif"></a><a href="{$skin-img-dir}/chapter.gif"></a><a href="{$skin-img-dir}/chapter_open.gif"></a><a href="{$skin-img-dir}/current.gif"></a><a href="/favicon.ico"></a></td> - - - <td class="logos" bgcolor="#a5b6c6" align="left"> - <xsl:if test="$config/host-logo and not($config/host-logo = '')"> - <a href="{$config/host-url}"><img src="{$config/host-logo}" alt="{$config/host-name} logo" border="0"/></a> - </xsl:if> - </td> ! <td width="90%" align="center" class="copyright" bgcolor="#a5b6c6" colspan="2"> ! <span class="footnote">Copyright © ! <xsl:value-of select="$config/year"/> <xsl:value-of ! select="$config/vendor"/> All rights reserved. ! <br/><script language="JavaScript" type="text/javascript"><![CDATA[<!-- ! document.write(" - "+"Last Published: " + document.lastModified); ! // -->]]></script></span> ! </td> ! ! <td class="logos" bgcolor="#a5b6c6" align="right" nowrap="nowrap"> ! <xsl:if test="$filename = 'index.html' and $config/credits"> ! <xsl:for-each select="$config/credits/credit"> ! <xsl:variable name="name" select="name"/> ! <xsl:variable name="url" select="url"/> ! <xsl:variable name="image" select="image"/> ! <xsl:variable name="width" select="width"/> ! <xsl:variable name="height" select="height"/> ! <a href="{$url}" valign="top"> ! <img alt="{$name} logo" border="0"> ! <xsl:attribute name="src"> ! <xsl:if test="not(starts-with($image, 'http://'))"><xsl:value-of select="$root"/></xsl:if> ! <xsl:value-of select="$image"/> ! </xsl:attribute> ! <xsl:if test="$width"><xsl:attribute name="width"><xsl:value-of select="$width"/></xsl:attribute></xsl:if> ! <xsl:if test="$height"><xsl:attribute name="height"><xsl:value-of select="$height"/></xsl:attribute></xsl:if> ! </img> ! <img src="{$spacer}" border="0" alt="" width="5" height="1" /> ! </a> ! </xsl:for-each> ! </xsl:if> ! </td> </tr> </table> - </body> - </html> - </xsl:template> - - - <xsl:template match="toc|toc2|tocc|toca"> - </xsl:template> - - - <xsl:template match="node()|@*" priority="-1"> - <xsl:copy> - <xsl:apply-templates select="@*"/> - <xsl:apply-templates/> - </xsl:copy> </xsl:template> ! ! ! ! </xsl:stylesheet> --- 21,515 ---- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ! <xsl:import href="../../../common/xslt/html/site2xhtml.xsl"/> ! ! <xsl:variable name="header-color" select="''"/> ! <xsl:variable name="header-color2" select="'#927762'"/> ! <xsl:variable name="menu-border" select="'#E4D3C6'"/> ! <xsl:variable name="background-bars" select="''"/> ! ! <xsl:template match="site"> <html> <head> ! <!-- <title><xsl:value-of select="div[@class='content']/table/tr/td/h1"/></title>--> <link rel="stylesheet" href="{$root}skin/page.css" type="text/css"/> + <!-- <script type="text/javascript" language="javascript" src="{$root}skin/fontsize.js"></script>--> </head> ! <body bgcolor="E4D3C6" text="#000000" onload="init()"> ! <!-- <script type="text/javascript">ndeSetTextSize();</script>--> ! <!-- ================================= top bar with logo's and search box =================================== --> ! ! <xsl:comment>================= start Banner ==================</xsl:comment> ! <table cellspacing="0" cellpadding="0" border="0" width="100%" summary="header with logos"> ! <tr> ! ! ! ! <!-- <xsl:comment>================= start Group Logo ==================</xsl:comment> ! <td bgcolor="{$header-color}"> ! <xsl:if test="$config/group-url"> ! <div class="headerlogo"> ! <xsl:call-template name="renderlogo"> ! <xsl:with-param name="name" select="$config/group-name"/> ! <xsl:with-param name="url" select="$config/group-url"/> ! <xsl:with-param name="logo" select="$config/group-logo"/> ! <xsl:with-param name="root" select="$root"/> ! </xsl:call-template> ! </div> ! <span class="textheader"><xsl:value-of select="$config/group-name"/></span> ! </xsl:if> ! </td> ! <xsl:comment>================= end Group Logo ==================</xsl:comment>--> ! <!-- <xsl:comment>================= start Project Logo ==================</xsl:comment> ! <td bgcolor="{$header-color}" align="center" > ! <div class="headerlogo"> ! <xsl:call-template name="renderlogo"> ! <xsl:with-param name="name" select="$config/project-name"/> ! <xsl:with-param name="url" select="$config/project-url"/> ! <xsl:with-param name="logo" select="$config/project-logo"/> ! <xsl:with-param name="root" select="$root"/> ! </xsl:call-template> ! </div> ! </td> ! <xsl:comment>================= end Project Logo ==================</xsl:comment> ! --> ! <td> ! <img src="resources/images/sheets-logo.png" alt="" usemap="#sheets_logo_Map" border="0" align="top"></img> ! <map id="sheets_logo_map"> ! <p><area shape="rect" alt="" coords="24,20,375,77" href="http://www.browsecode.org"></area></p> ! <p><area shape="circle" alt="" coords="541,93,85" href="http://www.browsecode.org"></area></p> ! </map> ! </td> ! </tr> ! <tr> ! ! <td> ! <span class="trail"> ! <xsl:if test="not($config/disable-search) or $config/disable-search='false' and $config/searchsite-domain and $config/searchsite-name"> ! <form method="get" action="http://www.google.com/search" onsubmit="q.value = query.value + ' site:{$config/searchsite-domain}'" target="_blank"> ! <table border="0" cellpadding="0" cellspacing="0" summary="search"> ! ! <tr><xsl:comment>=============SITE TREE===========</xsl:comment> ! <td><img src="{$spacer}" alt="" width="10" height="1" /><script type="text/javascript" language="JavaScript" src="{$root}skin/breadcrumbs.js"></script></td> ! ! <td><img class="spacer" src="{$spacer}" alt="" width="275" height="1" /></td> ! <td nowrap="nowrap"> + the <xsl:value-of select="$config/searchsite-name"/> site <input type="hidden" name="q"/> ! <input type="text" id="query" size="15"/><img src="{$spacer}" alt="" width="5" height="1" /><!-- input box <input type="submit" value="Search" name="Search"/> --> ! ! <!-- <span class="search"> ! the <xsl:value-of select="$config/searchsite-name"/> site--> ! <!-- setting search options off for the moment --> <!-- <input type="radio" name="web" value="web"/>web site  <input type="radio" name="mail" value="mail"/>mail lists --> ! <!-- </span> --> </td> </tr> ! ! </table> ! </form> </xsl:if> ! ! ! ! </span> ! </td> ! ! ! ! ! <!-- ! <xsl:comment>================= start Search ==================</xsl:comment> ! <td class="search" align="right" bgcolor="{$header-color}" rowspan="2" valign="top"> ! <xsl:if test="not($config/disable-search) or ! $config/disable-search='false' and $config/searchsite-domain and ! $config/searchsite-name"> ! <form method="get" action="http://www.google.com/search" target="_blank"> ! <table bgcolor="{$menu-border}" cellpadding="0" cellspacing="0" border="0" summary="search"> ! <tr> ! <td colspan="3" bgcolor="#a5b6c6"><img class="spacer" src="{$spacer}" alt="" width="1" height="10" /></td> ! </tr> ! <tr> ! <td colspan="3"><img class="spacer" src="{$spacer}" alt="" width="1" height="8" /></td> ! </tr> ! <tr> ! <td><img class="spacer" src="{$spacer}" alt="" width="1" height="1" /></td> ! <td nowrap="nowrap"> ! <input type="hidden" name="sitesearch" value="{$config/searchsite-domain}"/> ! <input type="text" id="query" name="q" size="15"/> ! <img class="spacer" src="{$spacer}" alt="" width="5" height="1" /> ! <input type="submit" value="Search" name="Search"/> ! <br /> ! the <xsl:value-of select="$config/searchsite-name"/> site ! ! </td> ! <td><img class="spacer" src="{$spacer}" alt="" width="1" height="1" /></td> ! </tr> ! ! <tr> ! <td colspan="3"><img class="spacer" src="{$spacer}" alt="" width="1" height="7" /></td> ! </tr> ! ! <tr> ! <td class="bottom-left-thick"></td> ! <td bgcolor="#a5b6c6"><img class="spacer" src="{$spacer}" alt="" width="1" height="1" /></td> ! <td class="bottom-right-thick"></td> ! </tr> ! </table> ! </form> ! </xsl:if> ! </td> ! <xsl:comment>================= end Search ==================</xsl:comment> ! --> ! <!-- <td align="right" bgcolor="{$header-color}"><img class="spacer" src="{$spacer}" alt="" width="10" height="10" /> ! <span class="textheader"><xsl:value-of select="$config/project-name"/></span> ! </td> ! --> ! </tr> ! <tr bgcolor="D6C1B1" valign="bottom"><td height="26"><xsl:apply-templates select="div[@class='tab']"/></td> ! ! </tr> ! ! ! <!-- <tr> ! <td> ! <xsl:comment>================= start Tabs ==================</xsl:comment> ! <xsl:apply-templates select="div[@class='tab']"/> ! <xsl:comment>================= end Tabs ==================</xsl:comment> ! </td> ! <td bgcolor="{$header-color}"><img class="spacer" src="{$spacer}" height="1" width="1" alt="" /></td> ! </tr> ! --> ! <!-- <tr> ! <td colspan="4" bgcolor="{$header-color2}" align="right"> ! <img src="{$spacer}" alt="" height="10" width="1" /> ! <span class="datenote"><script language="JavaScript" type="text/javascript"><![CDATA[]]></script></span> ! </td> ! </tr> ! --> ! ! </table> ! <xsl:comment>================= end Banner ==================</xsl:comment> ! ! ! <xsl:comment>================= start Menu, NavBar, Content ==================</xsl:comment> ! <table cellspacing="0" cellpadding="0" border="0" width="100%" bgcolor="D6C1B1" summary="page content"> ! ! <tr> ! <td valign="top"> ! ! <!-- If we have any menu items, draw a menu --> ! <xsl:if test="div[@class='menu']/ul/li"> ! <xsl:call-template name="menu"/> ! </xsl:if> ! </td> + <td width="100%" valign="top"> + <table cellspacing="0" cellpadding="0" border="0" width="100%" summary="content"> ! <xsl:comment>================= start middle NavBar ==================</xsl:comment> ! <!-- <tr><td bgcolor="{$header-color2}" colspan="3"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td></tr> ! <tr> ! <td bgcolor="{$background-bars}" width="10" align="left"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td> ! <td width="100%" bgcolor="{$background-bars}"> ! <table cellspacing="0" cellpadding="0" border="0" width="100%" > ! <tr> ! <td bgcolor="{$background-bars}" width="50%" align="left"> ! --> ! <!-- ============ Page number =========== --> ! <!-- ! <span class="trail"> !   ! <script type="text/javascript" language="JavaScript" src="{$root}skin/breadcrumbs.js"></script> ! ! </span> ! <img class="spacer" src="{$spacer}" alt="" height="8" width="10" /> ! </td> ! <td bgcolor="{$background-bars}" width="50%" align="right"> ! --> ! <!-- ============ Page navigation =========== --> ! <!-- <span class="trail">Font size: !  <input type="button" onclick="ndeSetTextSize('decr'); return false;" title="Shrink text" class="smallerfont" value="-a"/> !  <input type="button" onclick="ndeSetTextSize('incr'); return false;" title="Enlarge text" class="biggerfont" value="+a"/> !  <input type="button" onclick="ndeSetTextSize('reset'); return false;" title="Reset text" class="resetfont" value="Reset"/> ! </span> ! ! <img class="spacer" src="{$spacer}" alt="" height="8" width="10" /> ! </td> ! </tr> ! </table> ! </td> ! <td bgcolor="#CFDCED" width="10"> ! <font face="Arial, Helvetica, Sans-serif" size="4" color="{$menu-border}"> </font> ! <img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td> ! </tr> ! <tr><td bgcolor="{$header-color2}" colspan="4"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td></tr> ! --> ! <xsl:comment>================= end middle NavBar ==================</xsl:comment> ! ! <xsl:comment>================= start Content==================</xsl:comment> ! <tr> ! <td width="10" align="left"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td> ! <td width="100%" align="left"> ! <xsl:apply-templates select="div[@class='content']"/> ! </td> ! <td width="10"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td> ! </tr> ! <xsl:comment>================= end Content==================</xsl:comment> ! ! </table> ! </td> ! </tr> ! <tr> ! <td><!-- using breaks so it scales with font size --> ! <br/><br/> ! </td> ! </tr> ! </table> ! <xsl:comment>================= end Menu, NavBar, Content ==================</xsl:comment> ! ! <xsl:comment>================= start Footer ==================</xsl:comment> ! <table border="0" width="100%" cellpadding="0" cellspacing="0" summary="footer"> ! <tr> ! <td bgcolor="{$menu-border}" height="1" colspan="2"> ! <img class="spacer" src="{$spacer}" alt="" width="1" height="1" /> ! <a href="{$skin-img-dir}/label.gif"/> ! <a href="{$skin-img-dir}/page.gif"/> ! <a href="{$skin-img-dir}/chapter.gif"/> ! <a href="{$skin-img-dir}/chapter_open.gif"/> ! <a href="{$skin-img-dir}/current.gif"/> ! <a href="/favicon.ico"/> ! </td> ! </tr> ! <tr> ! <xsl:if test="$config/host-logo and not($config/host-logo = '')"> ! <div class="host"> ! <img class="spacer" src="{$spacer}" width="10" height="1" alt=""/> ! <xsl:call-template name="renderlogo"> ! <xsl:with-param name="name" select="$config/host-name"/> ! <xsl:with-param name="url" select="$config/host-url"/> ! <xsl:with-param name="logo" select="$config/host-logo"/> ! <xsl:with-param name="root" select="$root"/> ! </xsl:call-template> ! </div> ! </xsl:if> ! <td width="90%" align="center" class="copyright" bgcolor="{$header-color2}" colspan="2"> ! <span class="footnote">Copyright © ! <xsl:value-of select="$config/year"/> <xsl:value-of ! select="$config/vendor"/> All rights reserved. ! <br/><script language="JavaScript" type="text/javascript"><![CDATA[<!-- ! document.write(" - "+"Last Published: " + document.lastModified); ! // -->]]></script></span> ! </td> ! <td class="logos" bgcolor="{$header-color2}" align="right" nowrap="nowrap"> ! ! <xsl:call-template name="compliancy-logos"/> ! <!-- old place where to put credits icons--> ! <!-- ! <xsl:if test="$filename = 'index.html' and $config/credits"> ! <xsl:for-each select="$config/credits/credit[not(@role='pdf')]"> ! <xsl:variable name="name" select="name"/> ! <xsl:variable name="url" select="url"/> ! <xsl:variable name="image" select="image"/> ! <xsl:variable name="width" select="width"/> ! <xsl:variable name="height" select="height"/> ! <a href="{$url}"> ! <img alt="{$name} logo" border="0"> ! <xsl:attribute name="src"> ! <xsl:if test="not(starts-with($image, 'http://'))"><xsl:value-of select="$root"/></xsl:if> ! <xsl:value-of select="$image"/> ! </xsl:attribute> ! <xsl:if test="$width"><xsl:attribute name="width"><xsl:value-of select="$width"/></xsl:attribute></xsl:if> ! <xsl:if test="$height"><xsl:attribute name="height"><xsl:value-of select="$height"/></xsl:attribute></xsl:if> ! </img> ! <img class="spacer" src="{$spacer}" border="0" alt="" width="5" height="1" /> ! </a> ! </xsl:for-each> ! </xsl:if> ! --> ! </td> ! </tr> ! </table> ! <xsl:comment>================= end Footer ==================</xsl:comment> ! </body> ! </html> ! </xsl:template> ! ! ! <xsl:template name="menu"> ! <table cellpadding="0" cellspacing="0" border="0" summary="menu"> ! ! ! <xsl:comment>================= start left top NavBar ==================</xsl:comment> ! ! <tr> ! <td width = "10"></td><td bgcolor="{$header-color2}" colspan="9"><img class="spacer" src="{$spacer}" alt="" height="1" width="1" /></td> ! ! </tr> ! ! <tr> ! ! ! <td valign="top" rowspan="3"> ! <table cellspacing="0" cellpadding="0" border="0" summary="blue line"> ! <tr><td><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td></tr> ! <tr><td bgcolor="{$background-bars}"><font face="Arial, Helvetica, Sans-serif" size="4" color="{$menu-border}"> </font></td></tr> ! <tr><td bgcolor="{$header-color}"><img class="spacer" src="{$spacer}" alt="" height="1" width="10" /></td></tr> </table> </td> + ! ! ! ! <xsl:comment>================= end left top NavBar ==================</xsl:comment> ! ! <td bgcolor="{$header-color2}"><img class="spacer" src="{$spacer}" alt="" height="1" width="1" /></td> ! <td bgcolor="{$menu-border}" valign="bottom"><img class="spacer" src="{$spacer}" alt="" height="10" width="10" /></td> ! <td bgcolor="{$header-color2}" valign="top" nowrap="nowrap"> ! ! ! ! <xsl:comment>================= start Menu items ==================</xsl:comment> ! ! <div class="menu"> ! <xsl:for-each select = "div[@class='menu']/ul/li"> ! <xsl:call-template name = "innermenuli" /> ! </xsl:for-each> ! </div> ! ! <xsl:comment>================= end Menu items ==================</xsl:comment> </td> + <td bgcolor="{$menu-border}" valign="bottom"><img class="spacer" src="{$spacer}" alt="" height="10" width="10" /></td> + <td bgcolor="{$header-color2}"><img class="spacer" src="{$spacer}" alt="" height="1" width="1" /></td> </tr> ! <tr> ! <td class="bottom-left-thick" rowspan="2" colspan="2"></td> ! <td bgcolor="{$header-color2}"><img class="spacer" src="{$spacer}" alt="" border="0" width="10" height="10" /></td> ! <td class="bottom-right-thick" rowspan="2" colspan="2"></td> ! </tr> ! <tr> ! <td bgcolor="{$header-color2}" height="1"><img class="spacer" src="{$spacer}" alt="" height="1" width="1" /></td> </tr> + <tr> + <td height="5"><img class="spacer" src="{$spacer}" alt="" height="5" width="1" /></td> + </tr> + + + <xsl:if test="$filename = 'index.html' and $config/credits"> + <xsl:for-each select="$config/credits/credit[not(@role='pdf')]"> + <xsl:variable name="name" select="name"/> + <xsl:variable name="url" select="url"/> + <xsl:variable name="image" select="image"/> + <xsl:variable name="width" select="width"/> + <xsl:variable name="height" select="height"/> + <tr> + <td height="5"><img class="spacer" src="{$spacer}" alt="" height="5" width="1" /></td> + </tr> + <tr> + <td><img class="spacer" src="{$spacer}" alt="" height="1" width="1" /></td> + <td colspan="4" height="5" class="logos"> + <a href="{$url}"> + <img alt="{$name} logo" border="0"> + <xsl:attribute name="src"> + <xsl:if test="not(starts-with($image, 'http://'))"><xsl:value-of select="$root"/></xsl:if> + <xsl:value-of select="$image"/> + </xsl:attribute> + <xsl:if test="$width"><xsl:attribute name="width"><xsl:value-of select="$width"/></xsl:attribute></xsl:if> + <xsl:if test="$height"><xsl:attribute name="height"><xsl:value-of select="$height"/></xsl:attribute></xsl:if> + </img> + <img class="spacer" src="{$spacer}" border="0" alt="" width="5" height="1" /> + </a> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </table> </xsl:template> ! ! ! <xsl:template name="innermenuli"> ! <div class="menutitle"><xsl:value-of select="font"/></div> ! <div class="menuitemgroup"> ! <xsl:for-each select= "ul/li"> ! ! <xsl:choose> ! <xsl:when test="a"> ! <div class="menuitem"><a href="{a/@href}"><xsl:value-of select="a" /></a></div> ! </xsl:when> ! <xsl:when test="span/@class='sel'"> ! <div class="menupage"> ! <div class="menupagetitle"><xsl:value-of select="span" /></div> ! <xsl:if test="//toc/tocc"> ! <div class="menupageitemgroup"> ! <xsl:for-each select = "//toc/tocc"> ! <div class="menupageitem"> ! <xsl:choose> ! <xsl:when test="string-length(toca)>15"> ! <a href="{toca/@href}" title="{toca}"><xsl:value-of select="substring(toca,0,20)" />...</a> ! </xsl:when> ! <xsl:otherwise> ! <a href="{toca/@href}"><xsl:value-of select="toca" /></a> ! </xsl:otherwise> ! </xsl:choose> ! ! <xsl:if test="toc2/tocc"> ! <!-- nicolaken: this enables double-nested page links--> ! <!-- ! <ul> ! <xsl:for-each select = "toc2/tocc"> ! ! <xsl:choose> ! <xsl:when test="string-length(toca)>15"> ! <li><a href="{toca/@href}" title="{toca}"><xsl:value-of select="substring(toca,0,20)" />...</a></li> ! </xsl:when> ! <xsl:otherwise> ! <li><a href="{toca/@href}"><xsl:value-of select="toca" /></a></li> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:for-each> ! </ul> ! --> ! </xsl:if> ! </div> ! </xsl:for-each> ! </div> ! </xsl:if> ! </div> ! </xsl:when> ! <xsl:otherwise> ! <xsl:call-template name = "innermenuli" /> ! </xsl:otherwise> ! </xsl:choose> ! ! </xsl:for-each> ! </div> ! </xsl:template> ! ! ! <xsl:template match="toc|toc2|tocc|toca"> ! </xsl:template> ! ! ! <xsl:template match="node()|@*" priority="-1"> ! <xsl:copy> ! <xsl:apply-templates select="@*"/> ! <xsl:apply-templates/> ! </xsl:copy> ! </xsl:template> ! </xsl:stylesheet> Index: tab2menu.xsl =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/xslt/html/tab2menu.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** tab2menu.xsl 6 Dec 2002 12:54:45 -0000 1.2 --- tab2menu.xsl 5 Aug 2003 20:02:28 -0000 1.3 *************** *** 23,62 **** $Id$ --> - <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - <xsl:param name="path"/> - <xsl:param name="dir_index" select="'index.html'"/> - <xsl:include href="dotdots.xsl"/> - <xsl:include href="pathutils.xsl"/> - - <!-- NOTE: Xalan has a bug (race condition?) where sometimes $root is only half-evaluated --> - <xsl:variable name="root"> - <xsl:call-template name="dotdots"> - <xsl:with-param name="path" select="$path"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="skin-img-dir" select="concat(string($root), 'skin/images')"/> - - <xsl:template name="spacer"> - <td width="8"> - <img src="{$root}skin/images/spacer.gif" width="8" height="8" alt=""/> - </td> - </xsl:template> - - <!-- - The longest path of any tab, whose path is a subset of the current URL. Ie, - the path of the 'current' tab. - --> - <xsl:variable name="longest-dir"> - <xsl:for-each select="/tabs/tab[starts-with($path, @dir|@href)]"> - <xsl:sort select="string-length(@dir|@href)" - data-type="number" order="descending"/> - <xsl:if test="position()=1"> - <xsl:value-of select="@dir|@href"/> - </xsl:if> - </xsl:for-each> - </xsl:variable> <xsl:template match="tabs"> --- 23,29 ---- $Id$ --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:import href="../../../common/xslt/html/tab2men... [truncated message content] |
|
From: <fun...@us...> - 2003-08-05 20:02:31
|
Update of /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/css
In directory sc8-pr-cvs1:/tmp/cvs-serv17082/src/documentation/skins/sheets-site/css
Modified Files:
page.css
Log Message:
website update
Index: page.css
===================================================================
RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/css/page.css,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** page.css 4 Dec 2002 21:12:52 -0000 1.2
--- page.css 5 Aug 2003 20:02:27 -0000 1.3
***************
*** 1,60 ****
- body { background-color: #FFFFFF; margin: 0px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; font-size : 80%; }
! p { background-color: #FFFFFF; margin: 10px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; font-size : 100%; }
a:link { color: #0F3660; }
! a:visited { color: #009999; }
! a:active { color: #000066; }
! a:hover { color: #000066; }
! .menu { background-color: #F7F7F7; margin: 0px; padding: 3px 3px 5px 3px; font-size : 70%; }
! .menu a:link { color: #000000; text-decoration : none; }
! .menu a:visited { color: #000000; text-decoration : none; }
! /*.menu a:active { font-weight: bold }*/
! .menu a:hover { color: #00AA77; text-decoration : none; }
! .menu ul { margin: 0px 0px 6px 8px; padding: 0px; }
! .menu li { margin: 0px 0px 2px 0px; padding: 0px; list-style-image: url('images/label.gif'); font-weight : bold; }
! .menu ul ul li .sel { list-style-image: url('images/current.gif'); font-style : plain;
! background-color:#CFDCED; border-color: #a5b6c6; border-style: solid; border-width: 1px;}
! .menu ul ul li { list-style-image: url('images/page.gif'); font-weight : normal; }
! #sfbar {
! border-right: 1px solid #a5b6c6;
! border-left: 1px solid #a5b6c6;
! border-bottom: 1px solid #a5b6c6;
! width: 175px;
! margin-left: 10px;
! color: black;
! text-align: left;
! font-style: normal;
! font-size: 70%;
! background-color: #F7F7F7;
! padding: 10px;
}
! #sfbar p {
! border: 1px solid #a5b6c6;
! width: 155px;
! margin: 5px;
! color: black;
! text-align: left;
! font-style: normal;
! font-size: 100%;
! background-color: #F7F7F7;
! padding: 5px;
}
! table .title { background-color: #FFFFFF; width:100%; border: 0px; }
! .dida { font-size: 60%; }
.pre { white-space: pre;}
! h1 { font-size : 140%; margin: 0px 0px 0px 0px; padding: 0px; }
! h2 { font-size : 130%; margin: 10px 0px 0px 0px; padding: 0px; font-weight : bold;}
! h3 { font-size : 110%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : bold; }
! h4 { font-size : 100%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : plain; text-align: left; }
! h5 { font-size : 90%; margin: 14px 0px 0px 0px; padding: 0px; font-weight : plain; text-align: left; }
.content { padding: 5px 5px 5px 10px; font : small Verdana, Helvetica, sans-serif; font-size : 80%; }
--- 1,125 ----
! body {
! background: url('images/background.png');
! background-color: #FFFFFF; margin: 0px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; font-size : 100%; }
!
! p { margin: 10px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; font-size : 100%; }
!
! .textheader { display: none; }
! .headerlogo { padding: 0px 2px 2px 0px; }
!
! .spacer { border: 0; margin: 0px; }
! .skin { border: 0; margin: 0px;}
! .figure { border: 0; vertical-align: top ; margin-top: 10px; margin-bottom: 10px; }
! img { border: 0; margin-top: 5px; margin-bottom: 5px; }
! /* Leave out vertical align until I figure out why IE isn't picking up the .skin/.spacer styles (JT) */
! /*vertical-align: top*/
!
a:link { color: #0F3660; }
! a:visited { color: #000044; }
! a:active { color: #800000; }
! a:hover { border: 0px solid #927762; background: #F2C3C9; }
! .menu a:link { color: #000000; font-weight: normal;}
! .menu a:visited { color: #000000; font-weight: normal; }
! .menu a:active { color: #000000; font-weight: normal; }
! .menu a:hover { color: #000000; font-weight: normal; }
! .menu { background-color: #E4D3C6;
! padding: 8px 0px 4px 0px;
! margin: 0px;
! font-size : 70%;
! }
!
! .menutitle {
! padding: 0px 3px 5px 10px;
! background-image: url('images/chapter_open.gif');
! background-repeat: no-repeat;
! background-position: center left;
! font-weight : bold;}
+ .menu .menuitemgroup {
+ margin: 0px 0px 6px 8px;
+ padding: 0px;
+ font-weight : bold; }
+
+
+ .menu .menuitem {
+ padding: 0px 0px 2px 10px;
+ background-image: url('images/page.gif');
+ background-repeat: no-repeat;
+ background-position: center left;
+ font-weight : normal;
}
! .menu .menupage {
! padding: 4px 3px 5px 10px;
! background-image: url('images/current.gif');
! background-repeat: no-repeat;
! background-position: top left;
! font-style : normal;
+
}
! .menu .menupagetitle {
! padding: 0px 0px 0px 6px;
! font-style : normal;
! background-color:#C9B7A9;
! border-color: #927762;
! border-style: solid;
! border-width: 1px;
!
! }
!
! .menu .menupageitemgroup {
! padding: 3px 0px 4px 6px;
! font-style : normal;
! background-color:#ffffff;
! border-color: #927762;
! border-style: solid;
! border-width: 1px;
!
! }
!
! .menu .menupageitem {
!
! font-style : normal;
! font-weight : normal;
! border-width: 0px;
! font-size : 90%;
! }
!
!
! .smallerfont {
! font-size : 100%;
! padding: 0px 0px 0px 0px;
! }
!
!
! .biggerfont {
! font-size : 100%;
! font-weight : bold;
! padding: 0px 0px 0px 0px;
! }
!
! .resetfont {
! font-size : 100%;
! font-weight : normal;
! padding: 0px 0px 0px 0px;
! }
!
! table .title { background-color: #; width:100%; border: 0px; }
! .dida { font-size: 80%; }
.pre { white-space: pre;}
! h1 { font-size : 160%; margin: 0px 0px 0px 0px; padding: 0px; }
! h2 { font-size : 140%; margin: 10px 0px 0px 0px; padding: 0px; font-weight : bold;}
! h3 { font-size : 130%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : bold; }
! h4 { font-size : 120%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : normal; text-align: left; }
! h4.faq { font-size : 120%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : bold; text-align: left; }
! h5 { font-size : 100%; margin: 14px 0px 0px 0px; padding: 0px; font-weight : normal; text-align: left; }
.content { padding: 5px 5px 5px 10px; font : small Verdana, Helvetica, sans-serif; font-size : 80%; }
***************
*** 64,103 ****
.content .ForrestTable td { background-color: #f0f0ff; color: black; }
- //.frame { margin: 5px 20px 5px 20px; font-size: 100%; }
- //.frame .content { margin: 2px; }
-
.note, .warning, .fixme {
border-top: 3px solid #900;
border-bottom: 3px solid #900;
! background-image: url('images/icon_error_lrg.gif');
background-repeat: no-repeat;
background-position: 0 1.33em;
margin: 1.33em 0;
! min-height: 32px; padding-left:36px; padding-right:0; padding-top:.33em; padding-bottom:.67em
}
.fixme {
! background-image: url('images/icon_warning_lrg.gif');
! border-color: #c60
}
.note {
! background-image: url('images/icon_info_lrg.gif');
! border-color: #069
}
- //.note { border: solid 1px #7099C5; background-color: #f0f0ff; }
- //.note .label { background-color: #7099C5; color: #ffffff; }
-
- //.warning { border: solid 1px #D00000; background-color: #fff0f0; }
- //.warning .label { background-color: #D30000; color: #ffffff; }
! //.fixme { border: solid 1px #C6C600; background-color: #FAF9C3; }
! //.fixme .label { background-color: #C6C600; color: #ffffff; }
- .code { border-color: #CFDCED; border-style: solid; border-width: 1px; font-size : 120%;}
.codefrag { font-family: "Courier New", Courier, monospace; font-size : 120%;}
--- 129,168 ----
.content .ForrestTable td { background-color: #f0f0ff; color: black; }
.note, .warning, .fixme {
border-top: 3px solid #900;
border-bottom: 3px solid #900;
! background-image: url(images/icon_error_lrg.gif);
background-repeat: no-repeat;
background-position: 0 1.33em;
margin: 1.33em 0;
! padding: .33em 0 .67em 36px;
! min-height: 32px;
}
.fixme {
! background-image: url(images/icon_warning_lrg.gif);
! border-color: #c60;
}
.note {
! background-image: url(images/icon_info_lrg.gif);
! border-color: #069;
}
+ .label{
+ font-weight: bold;
+ }
! .code { background-color: #F7F7F7;
! border-color: #CFDCED;
! border-style: solid;
! border-width: 1px;
! font-size : 120%;
! padding: 1em 1.33em 1em 1.33em;
! }
.codefrag { font-family: "Courier New", Courier, monospace; font-size : 120%;}
***************
*** 108,199 ****
.search { font-size : 70%; }
.footnote { font-size : 70%; }
! input { font-size : 70% }
! submit { font-size : 70% }
! button { font-size : 70% }
! textarea { font-size : 70% }
! .tab { font-size : 70%; border: 0px none; }
! .tab a:link { text-decoration : none; }
! .tab a:visited { text-decoration : none; }
.trail { font-size: 70%; }
! .trail a:link { text-decoration : none; }
! .trail a:visited { text-decoration : none; }
.dtdTag { color: #990000; text-transform : uppercase; font-style : normal; font-size : 120%; font-weight : bold; }
.top-left {
! background-color: #a5b6c6;
! background-image: url('images/top-left.png');
background-repeat: no-repeat;
! background-position: left top;
! width : 5;
! height : 5
}
.top-right {
! background-color: #a5b6c6;
! background-image: url('images/top-right.png');
background-repeat: no-repeat;
! background-position: right top;
! width : 5;
! height : 5
}
.top-left-tab {
background-color: #cedfef;
! background-image: url('images/top-left.png');
background-repeat: no-repeat;
! background-position: left top;
! width : 5;
! height : 5
}
.top-right-tab {
background-color: #cedfef;
! background-image: url('images/top-right.png');
background-repeat: no-repeat;
! background-position: right top;
! width : 5;
! height : 5
}
.bottom-left {
! background-color: #a5b6c6;
! background-image: url('images/bottom-left.png');
background-repeat: no-repeat;
! background-position: left bottom;
! width : 5;
! height : 5
}
.bottom-right {
! background-color: #a5b6c6;
! background-image: url('images/bottom-right.png');
background-repeat: no-repeat;
! background-position: right bottom;
! width : 5;
! height : 5
}
.bottom-left-thick {
! background-color: #a5b6c6;
! background-image: url('images/bottom-left.png');
background-repeat: no-repeat;
! background-position: left bottom;
! width : 5;
! height : 9
}
.bottom-right-thick {
! background-color: #a5b6c6;
! background-image: url('images/bottom-right.png');
background-repeat: no-repeat;
! background-position: right bottom;
! width : 5;
! height : 9
}
--- 173,302 ----
.search { font-size : 70%; }
.footnote { font-size : 70%; }
+ .datenote { font-size : 60%; color: #F7F7F7;}
! input { font-size : 100% }
! submit { font-size : 100% }
! button { font-size : 100% }
! textarea { font-size : 100% }
! .tab { font-size : 85%; border: 0 }
!
! .tab a:link { font-weight: normal;}
! .tab a:visited { font-weight: normal; }
! .tab a:active { font-weight: normal; }
! .tab a:hover { font-weight: normal; }
.trail { font-size: 70%; }
!
! .trail a:link { font-weight: normal;}
! .trail a:visited { font-weight: normal; }
! .trail a:active { font-weight: normal; }
! .trail a:hover { font-weight: normal; }
!
.dtdTag { color: #990000; text-transform : uppercase; font-style : normal; font-size : 120%; font-weight : bold; }
.top-left {
! background-color: #927762;
! background-image: url(images/top-left.png);
background-repeat: no-repeat;
! background-position: top left;
! width : 5px;
! height : 5px;
}
.top-right {
! background-color: #927762;
! background-image: url(images/top-right.png);
background-repeat: no-repeat;
! background-position: top right;
! width : 5px;
! height : 5px;
}
.top-left-tab {
background-color: #cedfef;
! background-image: url(images/top-left.png);
background-repeat: no-repeat;
! background-position: top left;
! width : 5px;
! height : 5px;
}
.top-right-tab {
background-color: #cedfef;
! background-image: url(images/top-right.png);
background-repeat: no-repeat;
! background-position: top right;
! width : 5px;
! height : 5px;
}
.bottom-left {
! background-color: #927762;
! background-image: url(images/bottom-left.png);
background-repeat: no-repeat;
! background-position: bottom left;
! width : 5px;
! height : 5px;
}
.bottom-right {
! background-color: #927762;
! background-image: url(images/bottom-right.png);
background-repeat: no-repeat;
! background-position: bottom right;
! width : 5px;
! height : 5px;
}
.bottom-left-thick {
! background-color: #927762;
! background-image: url(images/bottom-left.png);
background-repeat: no-repeat;
! background-position: bottom left;
! width : 5px;
! height : 9px;
}
.bottom-right-thick {
! background-color: #927762;
! background-image: url(images/bottom-right.png);
background-repeat: no-repeat;
! background-position: bottom right;
! width : 5px;
! height : 9px;
}
+
+
+
+ @media print {
+ .headerlogo { display: none; }
+ .textheader { display: block; font-size : 70%; }
+ .menu { display: none; }
+ .dida { display: none; }
+ .minitoc { display: none; }
+ .search { display: none; }
+ .datenote { display: none; }
+ /*.footnote { display: none; }*/
+ .tab { display: none; }
+ .trail { display: none; }
+ .logos { display: none; }
+
+ .top-left { display: none; }
+ .top-right { display: none; }
+ .top-left-tab { display: none; }
+ .top-right-tab { display: none; }
+ .bottom-left { display: none; }
+ .bottom-right { display: none; }
+ .bottom-left-thick { display: none; }
+ .bottom-right-thick { display: none; }
+
+ }
+
+
+
+
|
|
From: <fun...@us...> - 2003-08-05 20:02:31
|
Update of /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images In directory sc8-pr-cvs1:/tmp/cvs-serv17082/src/documentation/skins/sheets-site/images Modified Files: bottom-left.png bottom-right.png chapter.gif chapter_open.gif current.gif label.gif page.gif printer.gif top-left.png top-right.png Log Message: website update Index: bottom-left.png =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/bottom-left.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsgj2wVo and /tmp/cvsuAUmGD differ Index: bottom-right.png =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/bottom-right.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsMmVsZp and /tmp/cvsK0yZNF differ Index: chapter.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/chapter.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsy0yl9q and /tmp/cvsEPRN7H differ Index: chapter_open.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/chapter_open.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsrqM0os and /tmp/cvsaJwGCK differ Index: current.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/current.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvs07W9Ct and /tmp/cvsi8RY4M differ Index: label.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/label.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsXLUVTu and /tmp/cvsanwwCP differ Index: page.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/page.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsU9SG7v and /tmp/cvs0Aur4R differ Index: printer.gif =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/printer.gif,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsNkqmcx and /tmp/cvsoErWbU differ Index: top-left.png =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/top-left.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvswAzT0x and /tmp/cvsm8qJQV differ Index: top-right.png =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skins/sheets-site/images/top-right.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvs3YvR3y and /tmp/cvsuxoOWX differ |
|
From: <fun...@us...> - 2003-08-04 05:56:35
|
Update of /cvsroot/sheets/sheets/src/documentation/resources/images In directory sc8-pr-cvs1:/tmp/cvs-serv29652/src/documentation/resources/images Modified Files: sheets-logo.png Log Message: website update Index: sheets-logo.png =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/resources/images/sheets-logo.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsL1DxGe and /tmp/cvsEQzwNi differ |
|
From: <fun...@us...> - 2003-08-04 05:56:35
|
Update of /cvsroot/sheets/sheets/src/documentation/content/xdocs In directory sc8-pr-cvs1:/tmp/cvs-serv29652/src/documentation/content/xdocs Modified Files: index.xml Log Message: website update Index: index.xml =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/content/xdocs/index.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** index.xml 17 Jan 2003 22:42:57 -0000 1.2 --- index.xml 4 Aug 2003 05:56:32 -0000 1.3 *************** *** 6,10 **** <title>Sheets Hypertext Environment</title> <authors> ! <person id="ox-eater" name="Stephen Chin" email="ox-...@us..."/> </authors> </header> --- 6,10 ---- <title>Sheets Hypertext Environment</title> <authors> ! <person id="fungus" name="Michael Chin" email="fun...@ho..."/> </authors> </header> |
|
From: <ox-...@us...> - 2003-07-14 17:37:02
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv19457
Modified Files:
Sheets.sheets build.xml todo.txt
Log Message:
Non-functional version of Sheets (the database is unstable). Although, I have made a bootstrap-ox version of the database, so development can continue with a stable version of the database.
The only change to Sheets was to fix the load order so that the splash screen does not come up if you are merely opening a file. Since this required a database change, you can't see it except when testing the new code.
Checked in some missing installer graphics.
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.63
retrieving revision 1.64
diff -C2 -d -r1.63 -r1.64
*** Sheets.sheets 18 Jun 2003 12:20:55 -0000 1.63
--- Sheets.sheets 14 Jul 2003 17:36:25 -0000 1.64
***************
*** 479,484 ****
private static void Sheets.parseCommandLine (String args[], InitState state)
{
! Vector fileList = new Vector();
! String userName = null;
for (int i = 0; i < args.length; i++) {
--- 479,483 ----
private static void Sheets.parseCommandLine (String args[], InitState state)
{
! state.fileList = new Vector();
for (int i = 0; i < args.length; i++) {
***************
*** 487,491 ****
currentDir = arg.substring(2);
else if (arg.startsWith("-u"))
! userName = arg.substring(2);
else if (arg.startsWith("-h"))
sheetsHome = arg.substring(2);
--- 486,490 ----
currentDir = arg.substring(2);
else if (arg.startsWith("-u"))
! state.username = arg.substring(2);
else if (arg.startsWith("-h"))
sheetsHome = arg.substring(2);
***************
*** 506,516 ****
state.logMessage = new File(args[++i]);
} else
! doOneArg(arg, fileList);
}
!
! if (userName == null)
! userName = System.getProperty("user.name");
! Profile.initialize(userName);
! state.fileList = fileList;
}
object nkramer:20
--- 505,512 ----
state.logMessage = new File(args[++i]);
} else
! doOneArg(arg, state.fileList);
}
! if (state.username == null)
! state.username = System.getProperty("user.name");
}
object nkramer:20
***************
*** 3325,3330 ****
rgs:3469
schin:169
- schin:25
- schin:26
nkramer:444
nkramer:5074
--- 3321,3324 ----
***************
*** 26655,26658 ****
--- 26649,26653 ----
nkramer:27856
rgs:13200
+ schin:1292
nkramer:27857
nkramer:27863
***************
*** 26703,26706 ****
--- 26698,26703 ----
state.filesToImport.addElement(file);
}
+ if (state.dbFile == null)
+ state.dbFile = new File("sheets.sdb");
}
object nkramer:27862
***************
*** 26709,26715 ****
section text nkramer:27862
private static void Sheets.initDatabase (InitState state) {
- if (state.dbFile == null)
- state.dbFile = new File("sheets.sdb");
-
if (!state.dbFile.exists()) {
state.newDB = true;
--- 26706,26709 ----
***************
*** 26740,26744 ****
State.loadGlobalState();
} catch (DatabaseLockedException e) {
- // If the database is locked, we should attempt to notify the corresponding Sheets process
if (!sendOpenRequest(state)) {
// Print out a user friendly message to suggest possible causes
--- 26734,26737 ----
***************
*** 37236,37241 ****
if (fragmentsChanged) {
ArchivalReference[] undoIDs = new ArchivalReference[ch.size()];
! for (int i = 0; i < undoIDs.length; i++)
undoIDs[i] = ((Checkpoint)(ch.elementAt(i))).getArchivalReference();
CommandCheckpoints ckp = new CommandCheckpoints(State.getObjectDatabase());
ckp.undoIDs = undoIDs;
--- 37229,37235 ----
if (fragmentsChanged) {
ArchivalReference[] undoIDs = new ArchivalReference[ch.size()];
! for (int i = 0; i < undoIDs.length; i++) {
undoIDs[i] = ((Checkpoint)(ch.elementAt(i))).getArchivalReference();
+ }
CommandCheckpoints ckp = new CommandCheckpoints(State.getObjectDatabase());
ckp.undoIDs = undoIDs;
***************
*** 38617,38626 ****
if (changeCommandStack.empty()) {
UndoDialog.maybeFinishUndo();
! if (getDeadFragments().size() != 0)
Console.internalError("Dead fragments not empty at beginChangeCommand?");
! if (getChangeHistory().size() != 0)
Console.internalError("History not empty at beginChangeCommand?");
! if (getReplacedFragments().size() != 0)
Console.internalError("Replaced fragments not empty at beginChangeCommand?");
}
changeCommandStack.push(cmd);
--- 38611,38626 ----
if (changeCommandStack.empty()) {
UndoDialog.maybeFinishUndo();
! if (getDeadFragments().size() != 0) {
! getDeadFragments().setSize(0);
Console.internalError("Dead fragments not empty at beginChangeCommand?");
! }
! if (getChangeHistory().size() != 0) {
! getChangeHistory().setSize(0);
Console.internalError("History not empty at beginChangeCommand?");
! }
! if (getReplacedFragments().size() != 0) {
! getReplacedFragments().setSize(0);
Console.internalError("Replaced fragments not empty at beginChangeCommand?");
+ }
}
changeCommandStack.push(cmd);
***************
*** 69691,69707 ****
return new SheetPropertiesDialog(this);
}
- object schin:25
- pkg=org.browsecode.sheets
- type=java
- section text schin:25
- private RootFrame ContainerFrame.rootFrame;
- object schin:26
- pkg=org.browsecode.sheets
- type=java
- section text schin:26
- public RootFrame ContainerFrame.getRootFrame()
- {
- return rootFrame;
- }
object schin:27
pkg=org.browsecode.sheets
--- 69691,69694 ----
***************
*** 82649,82652 ****
--- 82636,82645 ----
view.replaceMultiLines(0, lines.length - 1, JavaFragment.adjustLines(output, (short)(Profile.standardJavaIndent + 1)));
}
+ object schin:1292
+ pkg=org.browsecode.sheets
+ type=java
+ section text schin:1292
+ // Primary username for this session
+ String InitState.username;
object sjc:1
pkg=org.browsecode.sheets.dicer
***************
*** 87891,87895 ****
public static void Sheets.main (String args[]) throws Exception
{
! final Splash splash = new Splash(6);
EventQueue.invokeAndWait(new Runnable() {
--- 87884,87899 ----
public static void Sheets.main (String args[]) throws Exception
{
! // read command line parameters
! InitState state = new InitState();
! parseCommandLine(args, state);
! scanFilenames(state);
!
! // if the database is already open, this must be a file open command
! if (!(state.dbFile.exists() && ObjectDatabase.databaseLocked(state.dbFile)))
! if (sendOpenRequest(state))
! System.exit(1); // successful file open
!
! // show splash screen
! final Splash splash = new Splash(5);
EventQueue.invokeAndWait(new Runnable() {
***************
*** 87900,87908 ****
splash.updateProgress(1);
! InitState state = new InitState();
! parseCommandLine(args, state);
! scanFilenames(state);
splash.updateProgress(2);
initDatabase(state);
splash.updateProgress(3);
--- 87904,87912 ----
splash.updateProgress(1);
! // initialize the profile
! Profile.initialize(state.username);
splash.updateProgress(2);
+ // initialize the database
initDatabase(state);
splash.updateProgress(3);
***************
*** 95195,95198 ****
--- 95199,95203 ----
nkramer:27856
rgs:13200
+ schin:1292
nkramer:27857
nkramer:27863
***************
*** 98735,98740 ****
nkramer:439
schin:172
- schin:25
- schin:26
nkramer:444
nkramer:5074
--- 98740,98743 ----
Index: build.xml
===================================================================
RCS file: /cvsroot/sheets/sheets/build.xml,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -d -r1.22 -r1.23
*** build.xml 10 Jun 2003 09:42:30 -0000 1.22
--- build.xml 14 Jul 2003 17:36:27 -0000 1.23
***************
*** 76,79 ****
--- 76,80 ----
<include name="**/*.jar"/>
<exclude name="bootstrap-sheets.jar"/>
+ <exclude name="bootstrap-ox.jar"/>
</patternset>
</fileset>
***************
*** 131,137 ****
</target>
! <target name="bootstrap" depends="dist"
description="Makes the current distribution the devel version of sheets">
! <copy file="${dist}/sheets.jar" tofile="${lib}/bootstrap-sheets.jar"/>
</target>
--- 132,139 ----
</target>
! <target name="bootstrap" depends="compile"
description="Makes the current distribution the devel version of sheets">
! <!-- The bootstrap differs from the distribution, because it has no manifest -->
! <jar jarfile="${lib}/bootstrap-sheets.jar" basedir="${classes}"/>
</target>
***************
*** 149,153 ****
<echo>Launching sheets...</echo>
! <java jar="${lib}/bootstrap-sheets.jar" maxmemory="384m" fork="true">
<!-- Fix for Solaris pref spaming -->
<jvmarg value="-Djava.util.prefs.syncInterval=2000000"/>
--- 151,155 ----
<echo>Launching sheets...</echo>
! <java classname="org.browsecode.sheets.Sheets" maxmemory="384m" fork="true">
<!-- Fix for Solaris pref spaming -->
<jvmarg value="-Djava.util.prefs.syncInterval=2000000"/>
***************
*** 157,160 ****
--- 159,172 ----
<arg line="${arg.import}"/>
<arg value="${database}"/>
+ <classpath>
+ <fileset dir="${lib}">
+ <patternset>
+ <include name="**/*.jar"/>
+ <exclude name="sheets.jar"/>
+ <exclude name="ox.jar"/>
+ </patternset>
+ </fileset>
+ <pathelement path="${java.class.path}"/>
+ </classpath>
</java>
</target>
Index: todo.txt
===================================================================
RCS file: /cvsroot/sheets/sheets/todo.txt,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** todo.txt 18 Jun 2003 12:20:56 -0000 1.29
--- todo.txt 14 Jul 2003 17:36:27 -0000 1.30
***************
*** 3,6 ****
--- 3,7 ----
todo:
+ line number is off (due to change in export format)
improve performance of file import by turning off the history manager during the batch.
|
|
From: <ox-...@us...> - 2003-07-14 17:36:42
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv19457/lib Modified Files: bootstrap-sheets.jar ox.jar Added Files: bootstrap-ox.jar Log Message: Non-functional version of Sheets (the database is unstable). Although, I have made a bootstrap-ox version of the database, so development can continue with a stable version of the database. The only change to Sheets was to fix the load order so that the splash screen does not come up if you are merely opening a file. Since this required a database change, you can't see it except when testing the new code. Checked in some missing installer graphics. --- NEW FILE: bootstrap-ox.jar --- (This appears to be a binary file; contents omitted.) Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 Binary files /tmp/cvskFCWKv and /tmp/cvscBPBi1 differ Index: ox.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/ox.jar,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 Binary files /tmp/cvsPBHwXK and /tmp/cvs0d6bQm differ |
|
From: <ox-...@us...> - 2003-07-14 17:36:41
|
Update of /cvsroot/sheets/sheets/installer/installer-graphics In directory sc8-pr-cvs1:/tmp/cvs-serv19457/installer/installer-graphics Added Files: active.gif complete.gif sheets-logo-noprogress.jpg upcoming.gif wizard.jpg Log Message: Non-functional version of Sheets (the database is unstable). Although, I have made a bootstrap-ox version of the database, so development can continue with a stable version of the database. The only change to Sheets was to fix the load order so that the splash screen does not come up if you are merely opening a file. Since this required a database change, you can't see it except when testing the new code. Checked in some missing installer graphics. --- NEW FILE: active.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: complete.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: sheets-logo-noprogress.jpg --- (This appears to be a binary file; contents omitted.) --- NEW FILE: upcoming.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: wizard.jpg --- (This appears to be a binary file; contents omitted.) |
|
From: <ox-...@us...> - 2003-07-14 17:21:44
|
Update of /cvsroot/sheets/sheets/installer/installer-graphics In directory sc8-pr-cvs1:/tmp/cvs-serv18944/installer-graphics Log Message: Directory /cvsroot/sheets/sheets/installer/installer-graphics added to the repository |
|
From: <ox-...@us...> - 2003-06-24 03:46:45
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv27590
Modified Files:
forrest.properties
Log Message:
Fixed the xdocs folder to point to the right location.
Index: forrest.properties
===================================================================
RCS file: /cvsroot/sheets/sheets/forrest.properties,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** forrest.properties 6 May 2003 10:03:40 -0000 1.1
--- forrest.properties 24 Jun 2003 03:46:41 -0000 1.2
***************
*** 26,30 ****
#project.conf-dir=${project.content-dir}/conf
#project.sitemap=${project.content-dir}/sitemap.xmap
! project.xdocs-dir=${project.content-dir}/content
#project.stylesheets-dir=${project.content-dir}/resources/stylesheets
#project.images-dir=${project.content-dir}/resources/images
--- 26,30 ----
#project.conf-dir=${project.content-dir}/conf
#project.sitemap=${project.content-dir}/sitemap.xmap
! project.xdocs-dir=${project.content-dir}/content/xdocs
#project.stylesheets-dir=${project.content-dir}/resources/stylesheets
#project.images-dir=${project.content-dir}/resources/images
|
|
From: <ox-...@us...> - 2003-06-18 12:21:30
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv13022
Modified Files:
Sheets.sheets sheets.mf todo.txt
Log Message:
1. Added new feature to automatically format code using the Jalopy formatting engine. (Just right click on a java fragment and choose "auto format").
2. Fixed a bug in the extend class wizard with single line comments.
3. Updated InstallAnywhere to install legal documents, as well as the latest jars needed for Jalopy.
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.62
retrieving revision 1.63
diff -C2 -d -r1.62 -r1.63
*** Sheets.sheets 16 Jun 2003 20:40:00 -0000 1.62
--- Sheets.sheets 18 Jun 2003 12:20:55 -0000 1.63
***************
*** 5160,5163 ****
--- 5160,5164 ----
import org.browsecode.sheets.*;
import org.browsecode.sheets.archive.*;
+ import org.browsecode.sheets.archive.Project;
import org.browsecode.sheets.graph.*;
import java.lang.ref.*;
***************
*** 5172,5175 ****
--- 5173,5178 ----
import org.apache.bcel.util.*;
import org.apache.bcel.classfile.*;
+ import de.hunsicker.jalopy.*;
+ import de.hunsicker.jalopy.storage.*;
section file-header-for nkramer:655
nkramer:1852
***************
*** 48164,48168 ****
new UncommentSelection(),
new TransformFieldToMethod(),
! new ExtendClassMethods()
};
}
--- 48167,48173 ----
new UncommentSelection(),
new TransformFieldToMethod(),
! new ExtendClassMethods(),
! new AutoFormatFragment(),
! new AutoFormatClass()
};
}
***************
*** 53874,53877 ****
--- 53879,53885 ----
if (type == Viewer.NAVIGATION)
new GotoFragmentReferences().addToMenu(menu, omit);
+ if (type == Viewer.COMPONENT && !(this instanceof JavaClassFragment)
+ && !(this instanceof JavaFileHeaderFragment))
+ new AutoFormatFragment().addToMenu(menu, omit);
super.fillContextMenu(menu, type);
}
***************
*** 53884,53889 ****
String[] omit = {"java"};
new GraphJavaHierarchy().addToMenu(menu, omit);
! } else if (type == Viewer.CONTENTS)
new ExtendClassMethods().addToMenu(menu, new String[]{"class"});
super.fillContextMenu(menu, type);
}
--- 53892,53899 ----
String[] omit = {"java"};
new GraphJavaHierarchy().addToMenu(menu, omit);
! } else if (type == Viewer.CONTENTS) {
! new AutoFormatClass().addToMenu(menu, null);
new ExtendClassMethods().addToMenu(menu, new String[]{"class"});
+ }
super.fillContextMenu(menu, type);
}
***************
*** 58079,58084 ****
if (inSingleLineComment && c == '\\n') { // single line comment end
inSingleLineComment = false;
! if (commentStartsWithReturn)
! newHeader.setLength(newHeader.length() - 1);
commentStartsWithReturn = false;
} else if (inMultiLineComment && c == '/' && lastc == '*') { // multi line comment end
--- 58089,58094 ----
if (inSingleLineComment && c == '\\n') { // single line comment end
inSingleLineComment = false;
! if (!commentStartsWithReturn)
! newHeader.append(c);
commentStartsWithReturn = false;
} else if (inMultiLineComment && c == '/' && lastc == '*') { // multi line comment end
***************
*** 58147,58165 ****
section text rgs:10756
protected void ExtendClassMethods.execute (ViewPanel pane, Viewer compView) {
! if (compView instanceof JavaViewer
! && compView.getFragment() instanceof JavaClassFragment) {
! ExtendJavaClassDialog dialog
! = new ExtendJavaClassDialog(Sheets.getRootFrame(),
! (JavaClassFragment)compView.getFragment());
! if (dialog.result != null) {
! JavaViewer view = (JavaViewer) compView;
! int lastLine = view.dispLines.length - 1;
! String repl = view.dispLines[lastLine] + dialog.result;
! view.replaceMultiLines(lastLine, 0,
! StringSplitter.split(repl, '\\n'));
! view.select(0, lastLine + 2, 0, lastLine + 2);
! }
! } else
Console.beep();
}
object rgs:10763
--- 58157,58175 ----
section text rgs:10756
protected void ExtendClassMethods.execute (ViewPanel pane, Viewer compView) {
! if (!(compView instanceof JavaViewer
! && compView.getFragment() instanceof JavaClassFragment)) {
Console.beep();
+ return;
+ }
+ ExtendJavaClassDialog dialog = new ExtendJavaClassDialog(Sheets.getRootFrame(),
+ (JavaClassFragment)compView.getFragment());
+ if (dialog.result != null) {
+ JavaViewer view = (JavaViewer) compView;
+ int lastLine = view.dispLines.length - 1;
+ String repl = view.dispLines[lastLine] + dialog.result;
+ view.replaceMultiLines(lastLine, 0,
+ StringSplitter.split(repl, '\\n'));
+ view.select(0, lastLine + 2, 0, lastLine + 2);
+ }
}
object rgs:10763
***************
*** 82506,82509 ****
--- 82516,82652 ----
the machine you are running on. Use this variable to override the default
line terminator.
+ object schin:1280
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1280
+ class AutoFormatFragment extends ChangeContainerCommand
+ section exports schin:1280
+ schin:1283
+ schin:1281
+ schin:1282
+ schin:1284
+ schin:1289
+ schin:1290
+ schin:1288
+ object schin:1281
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1281
+ public String AutoFormatFragment.getName() {
+ return "auto-format-fragment";
+ }
+ object schin:1282
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1282
+ protected void AutoFormatFragment.execute(ViewPanel pane, Viewer compView) {
+ if (!(compView.getFragment() instanceof JavaFragment)) {
+ Console.beep();
+ return;
+ }
+
+ JavaFragment frag = (JavaFragment)compView.getFragment();
+ if (compView.isBeingEdited()) {
+ JavaViewer view = (JavaViewer)compView;
+ autoFormat(frag, view);
+ } else {
+ autoFormat(frag);
+ }
+ }
+ object schin:1283
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1283
+ static Jalopy AutoFormatFragment.jalopy;
+ object schin:1284
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1284
+ static void AutoFormatFragment.createJalopy() {
+ if (jalopy != null)
+ return;
+ jalopy = new Jalopy();
+ jalopy.setFileFormat("\\n");
+ }
+ object schin:1285
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1285
+ class AutoFormatClass extends ChangeContainerCommand
+ section exports schin:1285
+ schin:1286
+ schin:1287
+ object schin:1286
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1286
+ protected void AutoFormatClass.execute (ViewPanel pane, Viewer compView) {
+ if (!(compView.getFragment() instanceof JavaClassFragment))
+ return;
+
+ JavaClassFragment javaClass = (JavaClassFragment)compView.getFragment();
+ PVector members = javaClass.getMembers();
+ AutoFormatFragment autoFormat = new AutoFormatFragment();
+ for (int i=0; i<members.size(); i++) {
+ JavaFragment member = (JavaFragment)members.elementAt(i);
+ AutoFormatFragment.autoFormat(member);
+ }
+ }
+ object schin:1287
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1287
+ public String AutoFormatClass.getName () {
+ return "auto-format-class";
+ }
+ object schin:1288
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1288
+ protected static void AutoFormatFragment.autoFormat(JavaFragment frag) {
+ String input = frag.toString(Fragment.FULL, false, false);
+ String output = autoFormat(input);
+ if (output == null) {
+ Console.beep();
+ return;
+ }
+ frag.replaceWith(output, false, false, null);
+ }
+ object schin:1289
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1289
+ static String AutoFormatFragment.autoFormat(String input) {
+ createJalopy();
+ String wrappedInput = "public class wrapper {\\n" + input + "\\n}\\n";
+ StringBuffer output = new StringBuffer();
+
+ Convention.getInstance().putInt(ConventionKeys.INDENT_SIZE, Profile.standardJavaIndent);
+ jalopy.setInput(wrappedInput, "");
+ jalopy.setOutput(output);
+ jalopy.format();
+ if (output.length() == 0)
+ return null;
+
+ return output.toString().substring(23, output.length() - 3);
+ }
+ object schin:1290
+ pkg=org.browsecode.javaStuff
+ type=java
+ section text schin:1290
+ protected static void AutoFormatFragment.autoFormat(JavaFragment frag, JavaViewer view) {
+ String[] lines = view.toEditableLines();
+ String joinedLines = StringSplitter.join(lines, '\\n');
+
+ // hack to get rid of unparsable portions of name
+ joinedLines = joinedLines.replaceFirst(frag.getName(view.showingWith("java class name"), view.showingWith("java package name"), false), frag.getName(false, false, false));
+
+ String output = autoFormat(joinedLines);
+ if (output == null) {
+ Console.beep();
+ return;
+ }
+ view.replaceMultiLines(0, lines.length - 1, JavaFragment.adjustLines(output, (short)(Profile.standardJavaIndent + 1)));
+ }
object sjc:1
pkg=org.browsecode.sheets.dicer
***************
*** 97959,97962 ****
--- 98102,98118 ----
nkramer:29073
nkramer:29071
+ lightWeight:separator
+ schin:1280
+ schin:1283
+ schin:1284
+ schin:1289
+ schin:1290
+ schin:1288
+ schin:1281
+ schin:1282
+ lightWeight:separator
+ schin:1285
+ schin:1286
+ schin:1287
object nkramer:2685
title=JSTExpression
Index: sheets.mf
===================================================================
RCS file: /cvsroot/sheets/sheets/sheets.mf,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** sheets.mf 31 Oct 2002 20:15:23 -0000 1.3
--- sheets.mf 18 Jun 2003 12:20:56 -0000 1.4
***************
*** 2,4 ****
Main-Class: org.browsecode.sheets.Sheets
Created-By: 1.2 (Sun Microsystems Inc.)
! Class-Path: ox.jar pat.jar kunststoff.jar jlfgr-1_0.jar antlr.jar bcel.jar
--- 2,4 ----
Main-Class: org.browsecode.sheets.Sheets
Created-By: 1.2 (Sun Microsystems Inc.)
! Class-Path: ox.jar kunststoff.jar jlfgr-1_0.jar antlrall.jar bcel.jar jalopy.jar log4j
Index: todo.txt
===================================================================
RCS file: /cvsroot/sheets/sheets/todo.txt,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** todo.txt 12 Jun 2003 05:13:18 -0000 1.28
--- todo.txt 18 Jun 2003 12:20:56 -0000 1.29
***************
*** 51,54 ****
--- 51,59 ----
* Refresh problem on main sheet after wizard closes
+ File Mapping:
+ * Should go directly to the file opened after import
+ * Should suppress the sheets starting dialog and the file import progress dialog
+ * Should be intelligent about reimporting the same file twice
+
Nice ideas:
Extend methods dialog should have an easy way to insert appropriate constructors.
|
|
From: <ox-...@us...> - 2003-06-18 12:21:29
|
Update of /cvsroot/sheets/sheets/installer
In directory sc8-pr-cvs1:/tmp/cvs-serv13022/installer
Modified Files:
Sheets.iap_xml
Log Message:
1. Added new feature to automatically format code using the Jalopy formatting engine. (Just right click on a java fragment and choose "auto format").
2. Fixed a bug in the extend class wizard with single line comments.
3. Updated InstallAnywhere to install legal documents, as well as the latest jars needed for Jalopy.
Index: Sheets.iap_xml
===================================================================
RCS file: /cvsroot/sheets/sheets/installer/Sheets.iap_xml,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** Sheets.iap_xml 10 Jun 2003 09:42:30 -0000 1.8
--- Sheets.iap_xml 18 Jun 2003 12:20:56 -0000 1.9
***************
*** 2,7 ****
<!-- This script was automatically generated using Zero G's InstallAnywhere 5.0.7 Standard, Build 1680
STATUS: Fully Functional LICENSED Edition
! DATE: Tue Jun 10 01:03:20 PDT 2003 -->
! <InstallAnywhere_Deployment_Project increments="1348">
<!-- ** DO NOT EDIT ** Essential authorization and configuration data ** DO NOT EDIT ** -->
<essentialScriptInfo>
--- 2,7 ----
<!-- This script was automatically generated using Zero G's InstallAnywhere 5.0.7 Standard, Build 1680
STATUS: Fully Functional LICENSED Edition
! DATE: Wed Jun 18 05:07:00 PDT 2003 -->
! <InstallAnywhere_Deployment_Project increments="1340">
<!-- ** DO NOT EDIT ** Essential authorization and configuration data ** DO NOT EDIT ** -->
<essentialScriptInfo>
***************
*** 11,17 ****
<buildID>3,13,71,87,105,110,100,111,119,115,32,50,48,48,48,44,32,53,46,49,44,32,120,56,54,59,32,74,97,118,97,32,49,46,51,46,49,95,48,51,44,32,83,117,110,32,77,105,99,114,111,115,121,115,116,101,109,115,32,73,110,99,46,44,32,104,116,116,112,58,47,47,106,97,118,97,46,115,117,110,46,99,111,109,47,59,32,101,110,44,32,85,83,59,32,67,112,49,50,53,50</buildID>
<!-- The authorizationID may change between project saves and builds. This does not effect the integrity of the project, nor do changes in this value represent changes in the actual InstallAnywhere project. -->
! <authorizationID>1,0,0,-16,-77,-77,-128,-64,80,112,114,103,83,98,113,97,113,49,51,67,58,65,70,68,86,69,64,69,66,69,48,63,87,5,2,8,14,29,112,5,0,0,0</authorizationID>
</essentialScriptInfo>
! <installationObjects uniqueObjects="67">
<object class="com.zerog.ia.installer.Installer" objectID="7e3307a0b772">
<property name="wizardME">
--- 11,17 ----
<buildID>3,13,71,87,105,110,100,111,119,115,32,50,48,48,48,44,32,53,46,49,44,32,120,56,54,59,32,74,97,118,97,32,49,46,51,46,49,95,48,51,44,32,83,117,110,32,77,105,99,114,111,115,121,115,116,101,109,115,32,73,110,99,46,44,32,104,116,116,112,58,47,47,106,97,118,97,46,115,117,110,46,99,111,109,47,59,32,101,110,44,32,85,83,59,32,67,112,49,50,53,50</buildID>
<!-- The authorizationID may change between project saves and builds. This does not effect the integrity of the project, nor do changes in this value represent changes in the actual InstallAnywhere project. -->
! <authorizationID>1,0,0,-16,-45,-49,-128,-112,80,112,114,103,83,98,113,97,113,49,51,67,58,65,70,68,86,69,64,69,66,69,48,63,87,5,2,14,5,15,122,5,0,0,0</authorizationID>
</essentialScriptInfo>
! <installationObjects uniqueObjects="69">
<object class="com.zerog.ia.installer.Installer" objectID="7e3307a0b772">
<property name="wizardME">
***************
*** 167,171 ****
</method>
<method name="addElement">
! <object class="com.zerog.ia.installer.util.LAXPropertyData" objectID="c43c70048eb1">
<property name="propertyValue">
<string><![CDATA[org.browsecode.sheets.Sheets]]></string>
--- 167,171 ----
</method>
<method name="addElement">
! <object class="com.zerog.ia.installer.util.LAXPropertyData" objectID="ee3f4d4a8eaf">
<property name="propertyValue">
<string><![CDATA[org.browsecode.sheets.Sheets]]></string>
***************
*** 238,253 ****
<object class="java.util.Vector">
<method name="addElement">
! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d278ec3">
<property name="unixPermissions">
<string><![CDATA[664]]></string>
</property>
<property name="sourceName">
! <string><![CDATA[sheets.jar]]></string>
</property>
<property name="overrideUnixPermissions">
<boolean>false</boolean>
</property>
<property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
</property>
<property name="shouldUninstall">
--- 238,262 ----
<object class="java.util.Vector">
<method name="addElement">
! <object class="com.zerog.ia.installer.actions.InstallDirCont" objectID="ee4641f98ecd">
! <property name="useFilterExtensions">
! <boolean>false</boolean>
! </property>
! <property name="expArchSize">
! <long>-1</long>
! </property>
<property name="unixPermissions">
<string><![CDATA[664]]></string>
</property>
<property name="sourceName">
! <string><![CDATA[]]></string>
</property>
<property name="overrideUnixPermissions">
<boolean>false</boolean>
</property>
+ <property name="directoryChosen">
+ <boolean>true</boolean>
+ </property>
<property name="sourcePath">
! <string><![CDATA[C:\sheets\dist]]></string>
</property>
<property name="shouldUninstall">
***************
*** 255,266 ****
</property>
<property name="destinationName">
! <string><![CDATA[sheets.jar]]></string>
</property>
! <property name="fileSize">
! <long>1502777</long>
</property>
<property name="macBinary">
<boolean>false</boolean>
</property>
</object>
</method>
--- 264,291 ----
</property>
<property name="destinationName">
! <string><![CDATA[\]]></string>
</property>
! <property name="createDirectory">
! <boolean>false</boolean>
! </property>
! <property name="directoryName">
! <string><![CDATA[dist]]></string>
! </property>
! <property name="patternMatcher">
! <object class="com.zerog.ia.installer.SimplePatternMatcher" objectID="ee4641fa8ecd">
! <property name="includePatterns">
! <object class="java.util.Vector"/>
! </property>
! <property name="excludePatterns">
! <object class="java.util.Vector"/>
! </property>
! </object>
</property>
<property name="macBinary">
<boolean>false</boolean>
</property>
+ <property name="fileOverwriteMode">
+ <int>0</int>
+ </property>
</object>
</method>
***************
*** 778,782 ****
<method name="put">
<string><![CDATA[com.zerog.ia.project.save.last.date]]></string>
! <string><![CDATA[Tue Jun 10 01:03:20 PDT 2003]]></string>
</method>
<method name="put">
--- 803,807 ----
<method name="put">
<string><![CDATA[com.zerog.ia.project.save.last.date]]></string>
! <string><![CDATA[Wed Jun 18 05:07:00 PDT 2003]]></string>
</method>
<method name="put">
***************
*** 1378,1445 ****
</property>
</object>
! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d268ec1">
! <property name="unixPermissions">
! <string><![CDATA[664]]></string>
! </property>
! <property name="sourceName">
! <string><![CDATA[antlrall.jar]]></string>
! </property>
! <property name="overrideUnixPermissions">
<boolean>false</boolean>
</property>
! <property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
! </property>
! <property name="shouldUninstall">
! <boolean>true</boolean>
! </property>
! <property name="destinationName">
! <string><![CDATA[antlrall.jar]]></string>
! </property>
! <property name="fileSize">
! <long>318236</long>
! </property>
! <property name="macBinary">
! <boolean>false</boolean>
</property>
- </object>
- <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d278ec1">
<property name="unixPermissions">
<string><![CDATA[664]]></string>
</property>
<property name="sourceName">
! <string><![CDATA[bcel.jar]]></string>
</property>
<property name="overrideUnixPermissions">
<boolean>false</boolean>
</property>
! <property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
! </property>
! <property name="shouldUninstall">
<boolean>true</boolean>
</property>
- <property name="destinationName">
- <string><![CDATA[bcel.jar]]></string>
- </property>
- <property name="fileSize">
- <long>515920</long>
- </property>
- <property name="macBinary">
- <boolean>false</boolean>
- </property>
- </object>
- <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d268ec2">
- <property name="unixPermissions">
- <string><![CDATA[664]]></string>
- </property>
- <property name="sourceName">
- <string><![CDATA[jlfgr-1_0.jar]]></string>
- </property>
- <property name="overrideUnixPermissions">
- <boolean>false</boolean>
- </property>
<property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
</property>
<property name="shouldUninstall">
--- 1403,1427 ----
</property>
</object>
! <object class="com.zerog.ia.installer.actions.InstallDirCont" objectID="ee41c6d18ec4">
! <property name="useFilterExtensions">
<boolean>false</boolean>
</property>
! <property name="expArchSize">
! <long>-1</long>
</property>
<property name="unixPermissions">
<string><![CDATA[664]]></string>
</property>
<property name="sourceName">
! <string><![CDATA[]]></string>
</property>
<property name="overrideUnixPermissions">
<boolean>false</boolean>
</property>
! <property name="directoryChosen">
<boolean>true</boolean>
</property>
<property name="sourcePath">
! <string><![CDATA[C:\sheets\legal]]></string>
</property>
<property name="shouldUninstall">
***************
*** 1447,1512 ****
</property>
<property name="destinationName">
! <string><![CDATA[jlfgr-1_0.jar]]></string>
! </property>
! <property name="fileSize">
! <long>114580</long>
! </property>
! <property name="macBinary">
! <boolean>false</boolean>
! </property>
! </object>
! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d278ec2">
! <property name="unixPermissions">
! <string><![CDATA[664]]></string>
! </property>
! <property name="sourceName">
! <string><![CDATA[kunststoff.jar]]></string>
! </property>
! <property name="overrideUnixPermissions">
! <boolean>false</boolean>
! </property>
! <property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
</property>
! <property name="shouldUninstall">
<boolean>true</boolean>
</property>
! <property name="destinationName">
! <string><![CDATA[kunststoff.jar]]></string>
</property>
! <property name="fileSize">
! <long>43888</long>
</property>
<property name="macBinary">
<boolean>false</boolean>
</property>
! </object>
! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="8ebe7d268ec3">
! <property name="unixPermissions">
! <string><![CDATA[664]]></string>
! </property>
! <property name="sourceName">
! <string><![CDATA[ox.jar]]></string>
! </property>
! <property name="overrideUnixPermissions">
! <boolean>false</boolean>
! </property>
! <property name="sourcePath">
! <string><![CDATA[C:\sheets\dist\]]></string>
! </property>
! <property name="shouldUninstall">
! <boolean>true</boolean>
! </property>
! <property name="destinationName">
! <string><![CDATA[ox.jar]]></string>
! </property>
! <property name="fileSize">
! <long>182495</long>
! </property>
! <property name="macBinary">
! <boolean>false</boolean>
</property>
</object>
! <object refID="8ebe7d278ec3"/>
</installChildren>
</object>
--- 1429,1511 ----
</property>
<property name="destinationName">
! <string><![CDATA[legal\]]></string>
</property>
! <property name="createDirectory">
<boolean>true</boolean>
</property>
! <property name="directoryName">
! <string><![CDATA[legal]]></string>
</property>
! <property name="patternMatcher">
! <object class="com.zerog.ia.installer.SimplePatternMatcher" objectID="ee41c6db8ec4">
! <property name="includePatterns">
! <object class="java.util.Vector"/>
! </property>
! <property name="excludePatterns">
! <object class="java.util.Vector">
! <method name="addElement">
! <object class="com.zerog.ia.installer.PatternAtom" objectID="ee445e148ecd">
! <property name="searchDescription">
! <string><![CDATA[Begins With]]></string>
! </property>
! <property name="includeExcludeState">
! <string><![CDATA[Excludes]]></string>
! </property>
! <property name="matchString">
! <string><![CDATA[Repository]]></string>
! </property>
! </object>
! </method>
! <method name="addElement">
! <object class="com.zerog.ia.installer.PatternAtom" objectID="ee4493b58ecd">
! <property name="searchDescription">
! <string><![CDATA[Begins With]]></string>
! </property>
! <property name="includeExcludeState">
! <string><![CDATA[Excludes]]></string>
! </property>
! <property name="matchString">
! <string><![CDATA[Entries]]></string>
! </property>
! </object>
! </method>
! <method name="addElement">
! <object class="com.zerog.ia.installer.PatternAtom" objectID="ee452ac88ecd">
! <property name="searchDescription">
! <string><![CDATA[Begins With]]></string>
! </property>
! <property name="includeExcludeState">
! <string><![CDATA[Excludes]]></string>
! </property>
! <property name="matchString">
! <string><![CDATA[Root]]></string>
! </property>
! </object>
! </method>
! <method name="addElement">
! <object class="com.zerog.ia.installer.PatternAtom" objectID="ee4558838ecd">
! <property name="searchDescription">
! <string><![CDATA[Begins With]]></string>
! </property>
! <property name="includeExcludeState">
! <string><![CDATA[Excludes]]></string>
! </property>
! <property name="matchString">
! <string><![CDATA[CVS]]></string>
! </property>
! </object>
! </method>
! </object>
! </property>
! </object>
</property>
<property name="macBinary">
<boolean>false</boolean>
</property>
! <property name="fileOverwriteMode">
! <int>0</int>
</property>
</object>
! <object refID="ee4641f98ecd"/>
</installChildren>
</object>
***************
*** 1567,1577 ****
<visualChildren>
<object refID="7e3307b4b77d"/>
<object refID="7e3307c8b784"/>
- <object refID="8ebe7d278ec3"/>
- <object refID="8ebe7d268ec3"/>
- <object refID="8ebe7d278ec2"/>
- <object refID="8ebe7d268ec2"/>
- <object refID="8ebe7d278ec1"/>
- <object refID="8ebe7d268ec1"/>
<object refID="c3468281b756"/>
</visualChildren>
--- 1566,1572 ----
<visualChildren>
<object refID="7e3307b4b77d"/>
+ <object refID="ee41c6d18ec4"/>
+ <object refID="ee4641f98ecd"/>
<object refID="7e3307c8b784"/>
<object refID="c3468281b756"/>
</visualChildren>
|
|
From: <ox-...@us...> - 2003-06-18 12:21:16
|
Update of /cvsroot/sheets/sheets/legal
In directory sc8-pr-cvs1:/tmp/cvs-serv13022/legal
Added Files:
LICENSE.jalopy.html LICENSE.log4j LICENSE.sheets.html
Log Message:
1. Added new feature to automatically format code using the Jalopy formatting engine. (Just right click on a java fragment and choose "auto format").
2. Fixed a bug in the extend class wizard with single line comments.
3. Updated InstallAnywhere to install legal documents, as well as the latest jars needed for Jalopy.
--- NEW FILE: LICENSE.jalopy.html ---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Appendix B. The Jalopy BSD License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.55.0"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="dependencies.html" title="Appendix A. Library Dependencies"><link rel="next" href="license-antlr.html" title="Appendix C. ANTLR SOFTWARE RIGHTS"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part I. Jalopy core"><link rel="chapter" href="installation.html" title="Chapter 1. Installation"><link rel="chapter" href="build.html" title="Chapter 2. Building"><link rel="chapter" href="usage.html" title="Chapter 3. Usage"><link rel="chapter" href="settings.html" title="Chapter 4. Settings"><link rel="part" href="part-plugins.html" title="Part II. Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter 5. Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter 6. Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter 7. Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter 8. JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter 9. JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter 10. jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter 11. NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix A. Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix B. The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix C. ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix D. The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix F. GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix G. Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix H. SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
<meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer">
<meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'>
</head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> •
<a href="./download.html" class="navlink">Download</a> •
<a href="./docs.html" class="navlink">Documentation</a> •
<a href="./plugins.html" class="navlink">Plug-ins</a> •
<a href="./links.html" class="navlink">Links</a> •
<a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#fffff0"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
<a href="./history.html" class="navlink2">History</a> |
<a href="./manual.html" class="navlink2">Manual</a> |
<a href="./faq.html" class="navlink2">FAQ</a> |
<a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
This page generated: <strong>November 14 2002</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix B. The Jalopy BSD License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="dependencies.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="license-antlr.html">Next</a></td></tr></table><hr></div><div class="appendix"><div class="titlepage"><div><h2 class="title"><a name="license-bsd"></a>Appendix B. The Jalopy BSD License</h2></div></div><a class="indexterm" name="d0e7173"></a><a class="indexterm" name="d0e7176"></a><p>
Copyright (c) 2001-2002, Marco Hunsicker. All rights reserved.
</p><p>
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
</p><div class="itemizedlist"><ul type="disc"><li><p>
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
</p></li><li><p>
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
</p></li><li><p>
Neither the name of the Jalopy Group nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
</p></li></ul></div><p>
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="dependencies.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="license-antlr.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix A. Library Dependencies </td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix C. ANTLR SOFTWARE RIGHTS</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
Copyright © 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
--- NEW FILE: LICENSE.log4j ---
/*
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "log4j" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* ap...@ap....
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation. For more information on the
* Apache Software Foundation, please see <http://www.apache.org/>.
*
*/
--- NEW FILE: LICENSE.sheets.html ---
<html>
<body>
<center><h3>The Open Software License</h3></center>
<font name="Helvetica" size="2">
<center>v. 1.1</center>
<p>This Open Software License (the "License") applies to any original work of
authorship (the "Original Work") whose owner (the "Licensor") has placed the
following notice immediately following the copyright notice for the Original
Work:</p>
<p>Licensed under the Open Software License version 1.1</p>
<p>1) Grant of Copyright License. Licensor hereby grants You a world-wide,
royalty-free, non-exclusive, perpetual, non-sublicenseable license to do the
following:</p>
<p>a) to reproduce the Original Work in copies;</p>
<p>b) to prepare derivative works ("Derivative Works") based upon the Original
Work;</p>
<p>c) to distribute copies of the Original Work and Derivative Works to the
public, with the proviso that copies of Original Work or Derivative Works that
You distribute shall be licensed under the Open Software License;</p>
<p>d) to perform the Original Work publicly; and</p>
<p>e) to display the Original Work publicly.</p>
<p>2) Grant of Patent License. Licensor hereby grants You a world-wide,
royalty-free, non-exclusive, perpetual, non-sublicenseable license, under
patent claims owned or controlled by the Licensor that are embodied in the
Original Work as furnished by the Licensor ("Licensed Claims") to make, use,
sell and offer for sale the Original Work. Licensor hereby grants You a
world-wide, royalty-free, non-exclusive, perpetual, non-sublicenseable license
under the Licensed Claims to make, use, sell and offer for sale Derivative Works.</p>
<p>3) Grant of Source Code License. The term "Source Code" means the preferred
form of the Original Work for making modifications to it and all available
documentation describing how to modify the Original Work. Licensor hereby
agrees to provide a machine-readable copy of the Source Code of the Original
Work along with each copy of the Original Work that Licensor distributes.
Licensor reserves the right to satisfy this obligation by placing a
machine-readable copy of the Source Code in an information repository reasonably
calculated to permit inexpensive and convenient access by You for as long as
Licensor continues to distribute the Original Work, and by publishing the
address of that information repository in a notice immediately following the
copyright notice that applies to the Original Work.</p>
<p>4) Exclusions From License Grant. Nothing in this License shall be deemed to
grant any rights to trademarks, copyrights, patents, trade secrets or any
other intellectual property of Licensor except as expressly stated herein. No
patent license is granted to make, use, sell or offer to sell embodiments of
any patent claims other than the Licensed Claims defined in Section 2. No
right is granted to the trademarks of Licensor even if such marks are included
in the Original Work. Nothing in this License shall be interpreted to prohibit
Licensor from licensing under different terms from this License any Original
Work that Licensor otherwise would have a right to license.</p>
<p>5) External Deployment. The term "External Deployment" means the use or
distribution of the Original Work or Derivative Works in any way such that the
Original Work or Derivative Works may be used by anyone other than You,
whether the Original Work or Derivative Works are distributed to those persons
or made available as an application intended for use over a computer network.
As an express condition for the grants of license hereunder, You agree that
any External Deployment by You of a Derivative Work shall be deemed a
distribution and shall be licensed to all under the terms of this License, as
prescribed in section 1(c) herein.</p>
<p>6) Attribution Rights. You must retain, in the Source Code of any Derivative
Works that You create, all copyright, patent or trademark notices from the
Source Code of the Original Work, as well as any notices of licensing and any
descriptive text identified therein as an "Attribution Notice." You must cause
the Source Code for any Derivative Works that You create to carry a prominent
Attribution Notice reasonably calculated to inform recipients that You have
modified the Original Work.</p>
<p>7) Warranty and Disclaimer of Warranty. Licensor warrants that the copyright
in and to the Original Work is owned by the Licensor or that the Original Work
is distributed by Licensor under a valid current license from the copyright
owner. Except as expressly stated in the immediately proceeding sentence, the
Original Work is provided under this License on an "AS IS" BASIS and WITHOUT
WARRANTY, either express or implied, including, without limitation, the
warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU.
This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No
license to Original Work is granted hereunder except under this disclaimer.</p>
<p>8) Limitation of Liability. Under no circumstances and under no legal theory,
whether in tort (including negligence), contract, or otherwise, shall the
Licensor be liable to any person for any direct, indirect, special, incidental,
or consequential damages of any character arising as a result of this License
or the use of the Original Work including, without limitation, damages for
loss of goodwill, work stoppage, computer failure or malfunction, or any and
all other commercial damages or losses. This limitation of liability shall not
apply to liability for death or personal injury resulting from Licensor's
negligence to the extent applicable law prohibits such limitation. Some
jurisdictions do not allow the exclusion or limitation of incidental or
consequential damages, so this exclusion and limitation may not apply to You.</p>
<p>9) Acceptance and Termination. If You distribute copies of the Original Work
or a Derivative Work, You must make a reasonable effort under the circumstances
to obtain the express and volitional assent of recipients to the terms of this
License. Nothing else but this License (or another written agreement between
Licensor and You) grants You permission to create Derivative Works based upon
the Original Work or to exercise any of the rights granted in Sections 1 herein,
and any attempt to do so except under the terms of this License (or another
written agreement between Licensor and You) is expressly prohibited by U.S.
copyright law, the equivalent laws of other countries, and by international
treaty. Therefore, by exercising any of the rights granted to You in Sections
1 herein, You indicate Your acceptance of this License and all of its terms and
conditions. This License shall terminate immediately and you may no longer
exercise any of the rights granted to You by this License upon Your failure to
honor the proviso in Section 1(c) herein.</p>
<p>10) Mutual Termination for Patent Action. This License shall terminate
automatically and You may no longer exercise any of the rights granted to You
by this License if You file a lawsuit in any court alleging that any OSI
Certified open source software that is licensed under any license containing
this "Mutual Termination for Patent Action" clause infringes any patent claims
that are essential to use that software.</p>
<p>11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this
License may be brought only in the courts of a jurisdiction wherein the Licensor
resides or in which Licensor conducts its primary business, and under the laws
of that jurisdiction excluding its conflict-of-law provisions. The application
of the United Nations Convention on Contracts for the International Sale of
Goods is expressly excluded. Any use of the Original Work outside the scope of
this License or after its termination shall be subject to the requirements and
penalties of the U.S. Copyright Act, 17 U.S.C. å¤ 101 et seq., the equivalent
laws of other countries, and international treaty. This section shall survive
the termination of this License.</p>
<p>12) Attorneys Fees. In any action to enforce the terms of this License or
seeking damages relating thereto, the prevailing party shall be entitled to
recover its costs and expenses, including, without limitation, reasonable
attorneys' fees and costs incurred in connection with such action, including
any appeal of such action. This section shall survive the termination of this
License.</p>
<p>13) Miscellaneous. This License represents the complete agreement concerning
the subject matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent necessary
to make it enforceable.</p>
<p>14) Definition of "You" in This License. "You" throughout this License,
whether in upper or lower case, means an individual or a legal entity exercising
rights under, and complying with all of the terms of, this License. For legal
entities, "You" includes any entity that controls, is controlled by, or is under
common control with you. For purposes of this definition, "control" means (i)
the power, direct or indirect, to cause the direction or management of such
entity, whether by contract or otherwise, or (ii) ownership of fifty percent
(50%) or more of the outstanding shares, or (iii) beneficial ownership of such
entity.</p>
<p>15) Right to Use. You may use the Original Work in all ways not otherwise
restricted or conditioned by this License or by law, and Licensor promises not
to interfere with or be responsible for such uses by You.</p>
<p>This license is Copyright (C) 2002 Lawrence E. Rosen. All rights reserved.
Permission is hereby granted to copy and distribute this license without
modification. This license may not be modified without the express written
permission of its copyright owner.</p>
</font>
</body>
</html>
|
|
From: <ox-...@us...> - 2003-06-18 12:21:16
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv13022/lib Modified Files: bootstrap-sheets.jar Added Files: jalopy.jar log4j.jar Log Message: 1. Added new feature to automatically format code using the Jalopy formatting engine. (Just right click on a java fragment and choose "auto format"). 2. Fixed a bug in the extend class wizard with single line comments. 3. Updated InstallAnywhere to install legal documents, as well as the latest jars needed for Jalopy. --- NEW FILE: jalopy.jar --- (This appears to be a binary file; contents omitted.) --- NEW FILE: log4j.jar --- (This appears to be a binary file; contents omitted.) Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 Binary files /tmp/cvszSENtb and /tmp/cvsTSjrpi differ |
|
From: <ox-...@us...> - 2003-06-16 20:40:05
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv24756
Modified Files:
Sheets.sheets
Log Message:
1. Backed out a bad version of OX. (There is a problem with ArchivalReferences holding onto released objects that I need to work through later)
2. Changed extend class wizard highlighting algorithm to not select final methods
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.61
retrieving revision 1.62
diff -C2 -d -r1.61 -r1.62
*** Sheets.sheets 15 Jun 2003 10:57:33 -0000 1.61
--- Sheets.sheets 16 Jun 2003 20:40:00 -0000 1.62
***************
*** 57963,57967 ****
JavaFunctionInterface javaFunction = (JavaFunctionInterface) possibleMethods.elementAt(i);
methods.addItem(javaFunction.toString());
! if (javaFunction.isAbstract() || javaFunction.enclosingClass().isInterface())
methods.select(i);
}
--- 57963,57967 ----
JavaFunctionInterface javaFunction = (JavaFunctionInterface) possibleMethods.elementAt(i);
methods.addItem(javaFunction.toString());
! if ((javaFunction.isAbstract() || javaFunction.enclosingClass().isInterface()) && !javaFunction.isFinal())
methods.select(i);
}
|
|
From: <ox-...@us...> - 2003-06-16 20:40:05
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv24756/lib Modified Files: ox.jar Log Message: 1. Backed out a bad version of OX. (There is a problem with ArchivalReferences holding onto released objects that I need to work through later) 2. Changed extend class wizard highlighting algorithm to not select final methods Index: ox.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/ox.jar,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 Binary files /tmp/cvskvX5cp and /tmp/cvsCgynbF differ |
|
From: <ox-...@us...> - 2003-06-15 10:58:40
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv10367
Modified Files:
Sheets.sheets
Log Message:
1. Fixed a timing bug where you could cause a history manager error by closing sheets immediately after importing a lot of code. The synchronization checks added should be good for stability all around.
2. New version of OX with the following changes:
a. Made the garbage collection algorithm more aggressive about cleaning up outdated references (in anticipation of implementing compaction soon)
b. Performance tweaking to make sure the aforementioned change does not reduce performance.
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.60
retrieving revision 1.61
diff -C2 -d -r1.60 -r1.61
*** Sheets.sheets 12 Jun 2003 08:14:29 -0000 1.60
--- Sheets.sheets 15 Jun 2003 10:57:33 -0000 1.61
***************
*** 37200,37205 ****
type=java
section text ram:479
! public static void HistoryManager.endChangeCommand
! (String cmd, boolean lethalIntent) {
if (!initialized) return;
--- 37200,37204 ----
type=java
section text ram:479
! public synchronized static void HistoryManager.endChangeCommand(String cmd, boolean lethalIntent) {
if (!initialized) return;
***************
*** 38611,38616 ****
// has any effect. We allow this nesting so that commands can call other
// commands, etc.
! public static void HistoryManager.beginChangeCommand
! (String cmd) {
if (!initialized) return;
if (changeCommandStack.empty()) {
--- 38610,38614 ----
// has any effect. We allow this nesting so that commands can call other
// commands, etc.
! public synchronized static void HistoryManager.beginChangeCommand(String cmd) {
if (!initialized) return;
if (changeCommandStack.empty()) {
***************
*** 54657,54661 ****
// by passing the return value to "restartChangeCommand" or cancelled by simply
// taking no action.
! public static Stack HistoryManager.deferChangeCommand () {
Stack retval = changeCommandStack;
changeCommandStack = new Stack();
--- 54655,54659 ----
// by passing the return value to "restartChangeCommand" or cancelled by simply
// taking no action.
! public synchronized static Stack HistoryManager.deferChangeCommand () {
Stack retval = changeCommandStack;
changeCommandStack = new Stack();
***************
*** 54667,54672 ****
section text rgs:8735
// See "deferChangeCommand" for details.
! public static void HistoryManager.restartChangeCommand (Stack old)
! { changeCommandStack = old; }
object rgs:8761
pkg=org.browsecode.sheets
--- 54665,54671 ----
section text rgs:8735
// See "deferChangeCommand" for details.
! public synchronized static void HistoryManager.restartChangeCommand (Stack old) {
! changeCommandStack = old;
! }
object rgs:8761
pkg=org.browsecode.sheets
|
|
From: <ox-...@us...> - 2003-06-15 10:58:13
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv10367/lib Modified Files: bootstrap-sheets.jar ox.jar Log Message: 1. Fixed a timing bug where you could cause a history manager error by closing sheets immediately after importing a lot of code. The synchronization checks added should be good for stability all around. 2. New version of OX with the following changes: a. Made the garbage collection algorithm more aggressive about cleaning up outdated references (in anticipation of implementing compaction soon) b. Performance tweaking to make sure the aforementioned change does not reduce performance. Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 Binary files /tmp/cvsNCfee9 and /tmp/cvsBxmhKb differ Index: ox.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/ox.jar,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 Binary files /tmp/cvsN3Ye2i and /tmp/cvsmD4Cft differ |
|
From: <ox-...@us...> - 2003-06-12 08:15:12
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv9044
Modified Files:
Sheets.sheets
Log Message:
1. Improved error handling of xml document parsing (now works with Xerces even though the publicId is null and an IOException gets thrown)
2. Class starting brace is now exported on the same line as the class definition to match the Sun coding conventions
3. Added a heuristic for exporting file header fragments wherein a space is put between the package header and the imports only if the imports are separated by spaces as well.
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.59
retrieving revision 1.60
diff -C2 -d -r1.59 -r1.60
*** Sheets.sheets 12 Jun 2003 05:20:52 -0000 1.59
--- Sheets.sheets 12 Jun 2003 08:14:29 -0000 1.60
***************
*** 91,95 ****
if (members == null) return;
for (int i = 0; i < members.numFragments(); i++) {
! if (i > 0) file.println("");
((JavaFragment)members.getFragment(i))
.export(file, Profile.javaClassIndent == -1 ? Profile.standardJavaIndent : Profile.javaClassIndent);
--- 91,96 ----
if (members == null) return;
for (int i = 0; i < members.numFragments(); i++) {
! // we put a space before the first method too
! file.println("");
((JavaFragment)members.getFragment(i))
.export(file, Profile.javaClassIndent == -1 ? Profile.standardJavaIndent : Profile.javaClassIndent);
***************
*** 31262,31265 ****
--- 31263,31269 ----
Console.batchedDisplay("Parse error while reading file: " + file);
comps = new Fragment[] { new UnknownDocFragment(State.getObjectDatabase(), fileContents, null) };
+ } catch (IOException e) {
+ Console.batchedDisplay("IO error while reading file: " + file);
+ comps = new Fragment[] { new UnknownDocFragment(State.getObjectDatabase(), fileContents, null) };
} catch (WrongDocumentTypeException e) {
// Just return for now (eventually need to propogate this exception
***************
*** 31451,31455 ****
// The instant you construct the parser, it does the parsing. Get the
// results out of the fragments field.
! public DocParser (String text, FragmentList links, boolean topLevel) throws SAXException, WrongDocumentTypeException {
initAndParse(text, links, topLevel);
}
--- 31455,31459 ----
// The instant you construct the parser, it does the parsing. Get the
// results out of the fragments field.
! public DocParser (String text, FragmentList links, boolean topLevel) throws SAXException, IOException, WrongDocumentTypeException {
initAndParse(text, links, topLevel);
}
***************
*** 32910,32914 ****
if (DocParser.textToXml(text, false) == null && !force)
return false;
! } catch (SAXException e) {
// Perhaps we should do something better, like highlight the error
return false;
--- 32914,32918 ----
if (DocParser.textToXml(text, false) == null && !force)
return false;
! } catch (Exception e) {
// Perhaps we should do something better, like highlight the error
return false;
***************
*** 32998,33002 ****
((Fragment)extensions.elementAt(i)).startEditing(null, false);
return true;
! } catch (SAXException e) {
if (!force) {
// Perhaps we should do something better, like highlight the error
--- 33002,33006 ----
((Fragment)extensions.elementAt(i)).startEditing(null, false);
return true;
! } catch (Exception e) {
if (!force) {
// Perhaps we should do something better, like highlight the error
***************
*** 34144,34148 ****
for (int i = 0; i < lines.length; i++)
file.println(lines[i]);
! } catch (SAXException e) {
// Perhaps we should do something better, like highlight the error
Console.internalError(e);
--- 34148,34152 ----
for (int i = 0; i < lines.length; i++)
file.println(lines[i]);
! } catch (Exception e) {
// Perhaps we should do something better, like highlight the error
Console.internalError(e);
***************
*** 34992,35007 ****
section text nkramer:31710
// Parses XML text, and returns the structure.
! // Need to handle the errors better...
! static Document DocParser.textToXml (String text, boolean topLevel) throws SAXException {
if (!topLevel) {
// enclose non-toplevel tags with a dummy element
text = "<dummy>" + text + "</dummy>";
}
! try {
! return builder.parse(new StringBufferInputStream(text));
! } catch (IOException e) {
! Console.internalError(new Exception("IO Error while trying to parse: " + text, e));
! }
! return null;
}
object nkramer:31711
--- 34996,35005 ----
section text nkramer:31710
// Parses XML text, and returns the structure.
! static Document DocParser.textToXml (String text, boolean topLevel) throws SAXException, IOException {
if (!topLevel) {
// enclose non-toplevel tags with a dummy element
text = "<dummy>" + text + "</dummy>";
}
! return builder.parse(new StringBufferInputStream(text));
}
object nkramer:31711
***************
*** 35024,35028 ****
if (changed)
((Fragment) comp).replaceWith(DocParser.xmlToText(doc), true, false, null);
! } catch (SAXException e) {
// Perhaps we should do something better, like highlight the error
Console.internalError(e);
--- 35022,35026 ----
if (changed)
((Fragment) comp).replaceWith(DocParser.xmlToText(doc), true, false, null);
! } catch (Exception e) {
// Perhaps we should do something better, like highlight the error
Console.internalError(e);
***************
*** 64515,64525 ****
String[] lines = text();
! for (int i=0; i < lines.length; i++) {
file.println(lines[i]);
}
! file.println("{");
exportMembers(file);
file.println("}");
-
file.endFragment();
}
--- 64513,64526 ----
String[] lines = text();
! for (int i=0; i < lines.length - 1; i++) {
file.println(lines[i]);
}
!
! // Use the Sun convention of keeping the class start brace on the same line
! file.print(lines[lines.length - 1]);
! file.println(" {");
!
exportMembers(file);
file.println("}");
file.endFragment();
}
***************
*** 64875,64880 ****
if (index < afterName.length() && afterName.charAt(index) == '\\n') index++;
buff.append(afterName.substring(index));
! } else
buff.append(beforeName.substring(summaryStart));
String[] lines = StringSplitter.splitLines(buff.toString());
--- 64876,64886 ----
if (index < afterName.length() && afterName.charAt(index) == '\\n') index++;
buff.append(afterName.substring(index));
! } else {
! // If the body contains any blank lines, let's separate the package statement with
! // a blank line.
! if (beforeName.indexOf("\\n\\n", summaryStart) != -1)
! buff.append('\\n');
buff.append(beforeName.substring(summaryStart));
+ }
String[] lines = StringSplitter.splitLines(buff.toString());
***************
*** 70930,70933 ****
--- 70936,70941 ----
builder.setEntityResolver(new org.xml.sax.EntityResolver() {
public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) {
+ if (publicId == null)
+ return null;
if (publicId.equals(DOCUMENT_V11)) {
return new org.xml.sax.InputSource(this.getClass().getResourceAsStream("dtd/document-v11.dtd"));
***************
*** 82042,82046 ****
// This constructor assumes this is not a top-level document,
// and hides the extra exception
! public DocParser (String text, FragmentList links) throws SAXException {
try {
initAndParse(text, links, false);
--- 82050,82054 ----
// This constructor assumes this is not a top-level document,
// and hides the extra exception
! public DocParser (String text, FragmentList links) throws SAXException, IOException {
try {
initAndParse(text, links, false);
***************
*** 82067,82074 ****
type=java
section text schin:1239
! public void DocParser.initAndParse (String text, FragmentList links, boolean topLevel) throws SAXException, WrongDocumentTypeException {
this.text = text;
Document doc = textToXml(text, true);
- if (doc == null) return; // some sort of fatal IOException
if (topLevel && (doc.getDoctype() == null || !DOCUMENT_V11.equals(doc.getDoctype().getPublicId()) || !DOCUMENT_V12.equals(doc.getDoctype().getPublicId())))
// wrong document type
--- 82075,82081 ----
type=java
section text schin:1239
! public void DocParser.initAndParse (String text, FragmentList links, boolean topLevel) throws SAXException, IOException, WrongDocumentTypeException {
this.text = text;
Document doc = textToXml(text, true);
if (topLevel && (doc.getDoctype() == null || !DOCUMENT_V11.equals(doc.getDoctype().getPublicId()) || !DOCUMENT_V12.equals(doc.getDoctype().getPublicId())))
// wrong document type
|
|
From: <ox-...@us...> - 2003-06-12 08:15:02
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv9044/lib Modified Files: bootstrap-sheets.jar Log Message: 1. Improved error handling of xml document parsing (now works with Xerces even though the publicId is null and an IOException gets thrown) 2. Class starting brace is now exported on the same line as the class definition to match the Sun coding conventions 3. Added a heuristic for exporting file header fragments wherein a space is put between the package header and the imports only if the imports are separated by spaces as well. Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 Binary files /tmp/cvsRYHkws and /tmp/cvs2yIdkj differ |
|
From: <ox-...@us...> - 2003-06-12 05:21:28
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv31112
Modified Files:
Sheets.sheets
Log Message:
Removed a stray println...
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.58
retrieving revision 1.59
diff -C2 -d -r1.58 -r1.59
*** Sheets.sheets 12 Jun 2003 05:13:16 -0000 1.58
--- Sheets.sheets 12 Jun 2003 05:20:52 -0000 1.59
***************
*** 10383,10387 ****
diffCommand = "diff -u ";
lineTerminator = System.getProperty("line.separator");
- System.out.println("we got a line terminator of length: " + lineTerminator.length() + lineTerminator);
debuggerCommandLine = "";
debugCommandLine = "";
--- 10383,10386 ----
|
|
From: <ox-...@us...> - 2003-06-12 05:21:10
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv31112/lib Modified Files: bootstrap-sheets.jar Log Message: Removed a stray println... Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 Binary files /tmp/cvsgG693a and /tmp/cvsmmiHav differ |
|
From: <ox-...@us...> - 2003-06-12 05:13:52
|
Update of /cvsroot/sheets/sheets
In directory sc8-pr-cvs1:/tmp/cvs-serv27839
Modified Files:
.sheetsrc Sheets.sheets todo.txt
Log Message:
1. Made all HistoryManager objects persistent. This way it is safe to sync the database during a change command (which occassionally happens for a good reason)
2. Improved the error message printed out if HistoryManager objects are not empty when a new change command is started.
3. Added a new line-terminator variable that can be used to force unix or windows linefeeds (or add some very creative borders to a file)
4. New version of OX with the following stability improvements:
a. Fixed a bug with SerializableArchivalObject that breaks the database format (again)
b. Improved debugging message for marking of released objects
IMPORTANT: Please regenerate your database!!!
Index: .sheetsrc
===================================================================
RCS file: /cvsroot/sheets/sheets/.sheetsrc,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** .sheetsrc 8 Jun 2003 17:14:34 -0000 1.14
--- .sheetsrc 12 Jun 2003 05:13:16 -0000 1.15
***************
*** 12,16 ****
#set screen-insets 0 108 0 0
! set web-browser "konqueror"
# Use this instead for *nix systems:
#set web-browser "mozilla"
--- 12,16 ----
#set screen-insets 0 108 0 0
! set web-browser "explorer"
# Use this instead for *nix systems:
#set web-browser "mozilla"
Index: Sheets.sheets
===================================================================
RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v
retrieving revision 1.57
retrieving revision 1.58
diff -C2 -d -r1.57 -r1.58
*** Sheets.sheets 11 Jun 2003 19:14:33 -0000 1.57
--- Sheets.sheets 12 Jun 2003 05:13:16 -0000 1.58
***************
*** 8393,8396 ****
--- 8393,8397 ----
ram:1501
ram:1707
+ schin:1276
nkramer:8556
nkramer:15089
***************
*** 8636,8639 ****
--- 8637,8643 ----
} else if (name.equals("diff-command")) {
diffCommand = getString(stream);
+ } else if (name.equals("line-terminator")) {
+ lineTerminator = getString(stream);
+ System.setProperty("line.separator", lineTerminator);
} else if (name.equals("debugger-command-line")) {
debuggerCommandLine = getString(stream);
***************
*** 10378,10381 ****
--- 10382,10387 ----
diff3Command = "diff3 -m ";
diffCommand = "diff -u ";
+ lineTerminator = System.getProperty("line.separator");
+ System.out.println("we got a line terminator of length: " + lineTerminator.length() + lineTerminator);
debuggerCommandLine = "";
debugCommandLine = "";
***************
*** 32028,32032 ****
String wrapperTag = old.wrapperTag();
if (wrapperTag != null)
! System.out.println(text = "<" + wrapperTag + ">" + text + "</" + wrapperTag + ">");
return replaceWithDoc(old, text, force, extend, container);
--- 32034,32038 ----
String wrapperTag = old.wrapperTag();
if (wrapperTag != null)
! text = "<" + wrapperTag + ">" + text + "</" + wrapperTag + ">";
return replaceWithDoc(old, text, force, extend, container);
***************
*** 36372,36377 ****
--- 36378,36386 ----
section exports ram:29
ram:43
+ schin:1273
ram2:48
+ schin:1274
ram2:49
+ schin:1275
ram:31
ram:760
***************
*** 36416,36421 ****
} else if (!HistoryManager.changeCommandStack.peek().equals("Undo Dialog")) {
if (event.replacements.length >= 1) {
! HistoryManager.deadFragments.removeElement(comp);
! HistoryManager.replacedFragments.addElement(comp);
}
}
--- 36425,36430 ----
} else if (!HistoryManager.changeCommandStack.peek().equals("Undo Dialog")) {
if (event.replacements.length >= 1) {
! HistoryManager.getDeadFragments().removeElement(comp);
! HistoryManager.getReplacedFragments().addElement(comp);
}
}
***************
*** 36440,36445 ****
// Don't bother checkpointing things that have already been checkpointed.
ArchivalReference compID = comp.getArchivalReference();
! for (int i = 0; i < HistoryManager.changeHistory.size(); i++)
! if (((Checkpoint)HistoryManager.changeHistory.elementAt(i)).containerID.equals(compID))
return;
switch (event.id) {
--- 36449,36455 ----
// Don't bother checkpointing things that have already been checkpointed.
ArchivalReference compID = comp.getArchivalReference();
! PVector ch = HistoryManager.getChangeHistory();
! for (int i = 0; i < ch.size(); i++)
! if (((Checkpoint)ch.elementAt(i)).containerID.equals(compID))
return;
switch (event.id) {
***************
*** 36455,36459 ****
UndoDialog.maybeFinishUndo();
Checkpoint ckp = comp.getCheckpoint();
! if (ckp != null) HistoryManager.changeHistory.addElement(ckp);
}
break;
--- 36465,36469 ----
UndoDialog.maybeFinishUndo();
Checkpoint ckp = comp.getCheckpoint();
! if (ckp != null) ch.addElement(ckp);
}
break;
***************
*** 36467,36472 ****
// Buffer we use to log the container modifications that happen within a given
// ChangeContainerCommand.
! static Vector /* of Checkpoint */ HistoryManager.changeHistory
! = new Vector(20, 20);
object ram:64
pkg=org.browsecode.sheets
--- 36477,36481 ----
// Buffer we use to log the container modifications that happen within a given
// ChangeContainerCommand.
! private static PVector /* of Checkpoint */ HistoryManager.changeHistory;
object ram:64
pkg=org.browsecode.sheets
***************
*** 37220,37268 ****
return;
}
! boolean somethingHappened = false;
! if (changeHistory.size() > 0) {
! somethingHappened = true;
! ArchivalReference[] undoIDs = new ArchivalReference[changeHistory.size()];
for (int i = 0; i < undoIDs.length; i++)
! undoIDs[i] = ((Checkpoint)(changeHistory.elementAt(i))).getArchivalReference();
CommandCheckpoints ckp = new CommandCheckpoints(State.getObjectDatabase());
ckp.undoIDs = undoIDs;
ckp.cmd = cmd;
! String[] dnames = new String[deadFragments.size()];
! for (int i = 0; i<deadFragments.size(); i++)
dnames[i] = ((Fragment)
! (deadFragments.elementAt(i))).toString(Fragment.NAME);
ckp.deletedNames = dnames;
! String[] rnames = new String[replacedFragments.size()];
! for (int i = 0; i<replacedFragments.size(); i++)
! rnames[i] = ((Fragment)
! (replacedFragments.elementAt(i))).toString(Fragment.NAME);
ckp.replacedNames = rnames;
ckp.getArchivalReference().objectModified();
! PVector ch = getCommandHistory();
! if (ch.size() >= Profile.globalUndoHistorySize)
! ch.removeElementAt(0);
! ch.addElement(ckp);
}
! replacedFragments.setSize(0);
! changeHistory.setSize(0);
! if (deadFragments.size() > 0) {
! somethingHappened = true;
! Fragment[] dead = new Fragment[deadFragments.size()];
for (int i = 0; i < dead.length; i++)
! dead[i] = (Fragment)(deadFragments.elementAt(i));
! deadFragments.setSize(0);
// If nothing in the changeHistory, no sheets modified, so can't undo. Last ref
// must have been transient. Treat like lethal.
! if (lethalIntent || changeHistory.size() == 0) {
! StringBuffer sb
! = new StringBuffer("Deleted " + dead[0].toString(Fragment.SHORT_NAME));
for (int i = 1; i < dead.length; i++) {
sb.append(", ");
--- 37229,37278 ----
return;
}
+
+ PVector ch = getChangeHistory();
+ PVector df = getDeadFragments();
+ PVector rf = getReplacedFragments();
! boolean fragmentsChanged = ch.size() > 0;
! if (fragmentsChanged) {
! ArchivalReference[] undoIDs = new ArchivalReference[ch.size()];
for (int i = 0; i < undoIDs.length; i++)
! undoIDs[i] = ((Checkpoint)(ch.elementAt(i))).getArchivalReference();
CommandCheckpoints ckp = new CommandCheckpoints(State.getObjectDatabase());
ckp.undoIDs = undoIDs;
ckp.cmd = cmd;
! String[] dnames = new String[df.size()];
! for (int i = 0; i<df.size(); i++)
dnames[i] = ((Fragment)
! (df.elementAt(i))).toString(Fragment.NAME);
ckp.deletedNames = dnames;
! String[] rnames = new String[rf.size()];
! for (int i = 0; i<rf.size(); i++)
! rnames[i] = ((Fragment)(rf.elementAt(i))).toString(Fragment.NAME);
ckp.replacedNames = rnames;
ckp.getArchivalReference().objectModified();
! PVector commandHistory = getCommandHistory();
! if (commandHistory.size() >= Profile.globalUndoHistorySize)
! commandHistory.removeElementAt(0);
! commandHistory.addElement(ckp);
}
! rf.setSize(0);
! ch.setSize(0);
! boolean fragmentsDied = df.size() > 0;
! if (fragmentsDied) {
! Fragment[] dead = new Fragment[df.size()];
for (int i = 0; i < dead.length; i++)
! dead[i] = (Fragment)(df.elementAt(i));
! df.setSize(0);
// If nothing in the changeHistory, no sheets modified, so can't undo. Last ref
// must have been transient. Treat like lethal.
! if (lethalIntent || fragmentsChanged) {
! StringBuffer sb = new StringBuffer("Deleted " + dead[0].toString(Fragment.SHORT_NAME));
for (int i = 1; i < dead.length; i++) {
sb.append(", ");
***************
*** 37278,37282 ****
}
! if (Profile.autoSync && somethingHappened) try {
State.getObjectDatabase().sync();
} catch (IOException e) { }
--- 37288,37292 ----
}
! if (Profile.autoSync && (fragmentsChanged || fragmentsDied)) try {
State.getObjectDatabase().sync();
} catch (IOException e) { }
***************
*** 37418,37422 ****
+ " died when not in a change command?");
else if (!HistoryManager.changeCommandStack.peek().equals("Undo Dialog"))
! HistoryManager.deadFragments.addElement(event.fragment);
}
}
--- 37428,37432 ----
+ " died when not in a change command?");
else if (!HistoryManager.changeCommandStack.peek().equals("Undo Dialog"))
! HistoryManager.getDeadFragments().addElement(event.fragment);
}
}
***************
*** 38609,38615 ****
if (changeCommandStack.empty()) {
UndoDialog.maybeFinishUndo();
! if (deadFragments.size() != 0 || changeHistory.size() != 0
! || replacedFragments.size() != 0)
Console.internalError("History not empty at beginChangeCommand?");
}
changeCommandStack.push(cmd);
--- 38619,38628 ----
if (changeCommandStack.empty()) {
UndoDialog.maybeFinishUndo();
! if (getDeadFragments().size() != 0)
! Console.internalError("Dead fragments not empty at beginChangeCommand?");
! if (getChangeHistory().size() != 0)
Console.internalError("History not empty at beginChangeCommand?");
+ if (getReplacedFragments().size() != 0)
+ Console.internalError("Replaced fragments not empty at beginChangeCommand?");
}
changeCommandStack.push(cmd);
***************
*** 46037,46041 ****
the actual error message. This is a magic variable: you can set it multiple
times, and the result is cumulative. Values are automatically installed for
! Sun's javac and for Microsoft's jvc.
object ram:2797
type=doc-para
--- 46050,46054 ----
the actual error message. This is a magic variable: you can set it multiple
times, and the result is cumulative. Values are automatically installed for
! Sun's javac and for IBM's jikes.
object ram:2797
type=doc-para
***************
*** 46884,46889 ****
// later gets a replacement event indicating replacement with 1 or
// more others.
! static Vector /* of Fragment */ HistoryManager.deadFragments
! = new Vector();
object ram2:49
pkg=org.browsecode.sheets
--- 46897,46901 ----
// later gets a replacement event indicating replacement with 1 or
// more others.
! private static PVector /* of Fragment */ HistoryManager.deadFragments;
object ram2:49
pkg=org.browsecode.sheets
***************
*** 46891,46896 ****
section text ram2:49
// Fragments that were replaced with 1 or more other fragments.
! static Vector /* of Fragment */ HistoryManager.replacedFragments
! = new Vector();
object ram2:50
pkg=org.browsecode.sheets
--- 46903,46907 ----
section text ram2:49
// Fragments that were replaced with 1 or more other fragments.
! private static PVector /* of Fragment */ HistoryManager.replacedFragments;
object ram2:50
pkg=org.browsecode.sheets
***************
*** 82432,82435 ****
--- 82443,82504 ----
section text schin:1272
private boolean Splash.Progress.firstPaintComplete;
+ object schin:1273
+ pkg=org.browsecode.sheets
+ type=java
+ section text schin:1273
+ static PVector HistoryManager.getChangeHistory ()
+ {
+ if (changeHistory == null) {
+ changeHistory = (PVector)State.getGlobalStateVar("HistoryManager.changeHistory");
+ if (changeHistory == null) {
+ changeHistory = new PVector(State.getObjectDatabase(), 20);
+ State.setGlobalStateVar("HistoryManager.changeHistory", changeHistory);
+ }
+ }
+ return changeHistory;
+ }
+ object schin:1274
+ pkg=org.browsecode.sheets
+ type=java
+ section text schin:1274
+ static PVector HistoryManager.getDeadFragments ()
+ {
+ if (deadFragments == null) {
+ deadFragments = (PVector)State.getGlobalStateVar("HistoryManager.deadFragments");
+ if (deadFragments == null) {
+ deadFragments = new PVector(State.getObjectDatabase(), 20);
+ State.setGlobalStateVar("HistoryManager.deadFragments", deadFragments);
+ }
+ }
+ return deadFragments;
+ }
+ object schin:1275
+ pkg=org.browsecode.sheets
+ type=java
+ section text schin:1275
+ static PVector HistoryManager.getReplacedFragments ()
+ {
+ if (replacedFragments == null) {
+ replacedFragments = (PVector)State.getGlobalStateVar("HistoryManager.replacedFragments");
+ if (replacedFragments == null) {
+ replacedFragments = new PVector(State.getObjectDatabase(), 20);
+ State.setGlobalStateVar("HistoryManager.replacedFragments", replacedFragments);
+ }
+ }
+ return replacedFragments;
+ }
+ object schin:1276
+ pkg=org.browsecode.sheets
+ type=java
+ section text schin:1276
+ // Line terminator used for exporting files
+ public static String Profile.lineTerminator;
+ object schin:1279
+ type=doc-para
+ section text schin:1279
+ The character or set of characters used to terminate each line in exported
+ files. By default, this will get set to appropriate line terminator for
+ the machine you are running on. Use this variable to override the default
+ line terminator.
object sjc:1
pkg=org.browsecode.sheets.dicer
***************
*** 95742,95745 ****
--- 95811,95815 ----
ram:1501
ram:1707
+ schin:1276
nkramer:15095
nkramer:8556
***************
*** 100836,100842 ****
--- 100906,100915 ----
ram:29
ram:43
+ schin:1273
ram:453
ram2:48
+ schin:1274
ram2:49
+ schin:1275
ram:31
ram:760
***************
*** 102675,102678 ****
--- 102748,102752 ----
ram:2785
ram:2793
+ schin:1278
object ram:2785
title=compile-command : String = "javac %java%"\nrecompile-command : String = "javac %JAVA%"
***************
*** 106300,106303 ****
--- 106374,106384 ----
schin:1226
schin:1227
+ object schin:1278
+ title=line-terminator : String = (platform-specific)
+ type=doc-definition
+ section text schin:1278
+ line-terminator : String = (platform-specific)
+ section components schin:1278
+ schin:1279
object sjc:6
title=ClickableLabel
Index: todo.txt
===================================================================
RCS file: /cvsroot/sheets/sheets/todo.txt,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** todo.txt 11 Jun 2003 10:31:16 -0000 1.27
--- todo.txt 12 Jun 2003 05:13:18 -0000 1.28
***************
*** 2,5 ****
--- 2,8 ----
-
+ todo:
+ improve performance of file import by turning off the history manager during the batch.
+
more annoying bugs:
java.lang.NullPointerException
|
|
From: <ox-...@us...> - 2003-06-12 05:13:31
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv27839/lib Modified Files: bootstrap-sheets.jar ox.jar Log Message: 1. Made all HistoryManager objects persistent. This way it is safe to sync the database during a change command (which occassionally happens for a good reason) 2. Improved the error message printed out if HistoryManager objects are not empty when a new change command is started. 3. Added a new line-terminator variable that can be used to force unix or windows linefeeds (or add some very creative borders to a file) 4. New version of OX with the following stability improvements: a. Fixed a bug with SerializableArchivalObject that breaks the database format (again) b. Improved debugging message for marking of released objects IMPORTANT: Please regenerate your database!!! Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 Binary files /tmp/cvsRCQNn0 and /tmp/cvsLRJzl9 differ Index: ox.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/ox.jar,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 Binary files /tmp/cvs85XfHy and /tmp/cvsumq4fZ differ |