From: <ox-...@us...> - 2003-05-06 10:04:14
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv8312 Modified Files: Sheets.sheets todo.txt Added Files: forrest.properties Log Message: Java Completion now list throws clauses in external prototypes Also fixed local variable names (if they are specified), and print miscellaneous attributes Fixed project website skin (new version of krysalis requires a forrest.properties file) --- NEW FILE: forrest.properties --- ############## # Properties used by forrest.build.xml for building the website ############## # Prints out a summary of Forrest settings for this project #forrest.echo=true # Project name (used to name .war file) project.name=sheets-site # Specifies name of Forrest skin to use project.skin=sheets-site #project.skin=avalon-tigris ############## # layout properties # Properties that must be set to override the default locations # # Parent properties must be set. This usually means uncommenting # project.content-dir if any other property using it is uncommented #project.status=status.xml project.content-dir=src/documentation #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 #project.schema-dir=${project.content-dir}/resources/schema #project.skins-dir=${project.content-dir}/skins #project.skinconf=${project.content-dir}/skinconf.xml #project.lib-dir=${project.content-dir}/lib #project.classes-dir=${project.content-dir}/classes ############## # Cocoon catalog entity resolver properties # A local catalog to supplement the default Forrest catalog #project.catalog=${project.schema-dir}/catalog # The verbosity level for the entity resolver (1..10) #forrest.catalog.verbosity=1 ############## # validation properties # These props determine if validation is performed at all # Values are inherited unless overridden. # Eg, if forrest.validate=false, then all others are false unless set to true. #forrest.validate=true #forrest.validate.xdocs=${forrest.validate} #forrest.validate.skinconf=${forrest.validate} forrest.validate.sitemap=false #forrest.validate.stylesheets=${forrest.validate} #forrest.validate.skins=${forrest.validate} #forrest.validate.skins.stylesheets=${forrest.validate.skins} # Key: # *.failonerror=(true|false) stop when an XML file is invalid # *.includes=(pattern) Comma-separated list of path patterns to validate # *.excludes=(pattern) Comma-separated list of path patterns to not validate #forrest.validate.failonerror=true #forrest.validate.includes=**/* #forrest.validate.excludes= # #forrest.validate.xdocs.failonerror=${forrest.validate.failonerror} # #forrest.validate.xdocs.includes=**/*.x* #forrest.validate.xdocs.excludes= # #forrest.validate.skinconf.includes=${skinconf-file} #forrest.validate.skinconf.excludes= #forrest.validate.skinconf.failonerror=${forrest.validate.failonerror} # #forrest.validate.sitemap.includes=${sitemap-file} #forrest.validate.sitemap.excludes= #forrest.validate.sitemap.failonerror=${forrest.validate.failonerror} # #forrest.validate.stylesheets.includes=**/*.xsl #forrest.validate.stylesheets.excludes= #forrest.validate.stylesheets.failonerror=${forrest.validate.failonerror} # #forrest.validate.skins.includes=**/* #forrest.validate.skins.excludes=**/*.xsl #forrest.validate.skins.failonerror=${forrest.validate.failonerror} # #forrest.validate.skins.stylesheets.includes=**/*.xsl #forrest.validate.skins.stylesheets.excludes= #forrest.validate.skins.stylesheets.failonerror=${forrest.validate.skins.failonerror} Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** Sheets.sheets 5 May 2003 09:20:00 -0000 1.46 --- Sheets.sheets 6 May 2003 10:03:39 -0000 1.47 *************** *** 67796,67799 **** --- 67796,67800 ---- schin:720 schin:1090 + schin:1252 schin:1021 schin:721 *************** *** 75321,75324 **** --- 75322,75326 ---- schin:717 schin:972 + schin:1252 object schin:714 pkg=org.browsecode.javaStuff *************** *** 79992,79996 **** // print out type String type = getFieldType(); ! sb.append(type); if (StringProxy.isPrimitive(type) || type.equals("void")) styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - type.length(), sb.length(), Profile.reservedWordColor)); --- 79994,79998 ---- // print out type String type = getFieldType(); ! sb.append(makeSimple(type)); if (StringProxy.isPrimitive(type) || type.equals("void")) styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - type.length(), sb.length(), Profile.reservedWordColor)); *************** *** 80011,80015 **** // print out type String type = getReturnType(); ! sb.append(type); if (StringProxy.isPrimitive(type) || type.equals("void")) styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - type.length(), sb.length(), Profile.reservedWordColor)); --- 80013,80017 ---- // print out type String type = getReturnType(); ! sb.append(makeSimple(type)); if (StringProxy.isPrimitive(type) || type.equals("void")) styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - type.length(), sb.length(), Profile.reservedWordColor)); *************** *** 80019,80036 **** sb.append(trueNameString()); ! // print out signature ! sb.append(" ("); ! String[] parameters = getParamTypes(); ! for (int i=0; i<parameters.length; i++) { ! sb.append(makeSimple(parameters[i])); ! if (StringProxy.isPrimitive(parameters[i]) || parameters[i].equals("void")) ! styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - parameters[i].length(), sb.length(), Profile.reservedWordColor)); ! sb.append(" arg"); ! sb.append(i); ! styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - Integer.toString(i).length() - 3, sb.length(), Profile.localVariableColor)); ! if (i != parameters.length - 1) ! sb.append(", "); ! } ! sb.append(")"); } object schin:1022 --- 80021,80025 ---- sb.append(trueNameString()); ! printSignature(sb, styleList); } object schin:1022 *************** *** 80047,80064 **** sb.append(enclosingClass.simpleName()); ! // print out signature ! sb.append(" ("); ! String[] parameters = getParamTypes(); ! for (int i=0; i<parameters.length; i++) { ! sb.append(makeSimple(parameters[i])); ! if (StringProxy.isPrimitive(parameters[i]) || parameters[i].equals("void")) ! styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - parameters[i].length(), sb.length(), Profile.reservedWordColor)); ! sb.append(" arg"); ! sb.append(i); ! styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - Integer.toString(i).length() - 3, sb.length(), Profile.localVariableColor)); ! if (i != parameters.length - 1) ! sb.append(", "); ! } ! sb.append(")"); } object schin:1023 --- 80036,80040 ---- sb.append(enclosingClass.simpleName()); ! printSignature(sb, styleList); } object schin:1023 *************** *** 82206,82209 **** --- 82182,82240 ---- section text schin:1251 private static CommandMap DocDefinition.defaultCommands; + object schin:1252 + pkg=org.browsecode.javaStuff + type=java + section text schin:1252 + // This function should never be called from a field + void ByteCodeFunction.printSignature(StringBuffer sb, ArrayList styleList) { + Method method = (Method)fieldOrMethod; + + // print out parameters + LocalVariableTable vars = method.getLocalVariableTable(); + int varOffset = isStatic() ? 0 : 1; + sb.append(" ("); + String[] parameters = getParamTypes(); + for (int i=0; i<parameters.length; i++) { + sb.append(makeSimple(parameters[i])); + if (StringProxy.isPrimitive(parameters[i]) || parameters[i].equals("void")) + styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - parameters[i].length(), sb.length(), Profile.reservedWordColor)); + sb.append(" "); + int paramStart = sb.length(); + if (vars != null) { + LocalVariable l = vars.getLocalVariable(i + varOffset); + sb.append(l == null ? "null" : l.getName()); + } else { + sb.append("arg"); + sb.append(i); + } + styleList.add(new ByteCodeViewer.StyleMarker(0, paramStart, sb.length(), Profile.localVariableColor)); + if (i < parameters.length - 1) + sb.append(", "); + } + sb.append(")"); + + // print out any weird extra attributes (ie. deprecated) + org.apache.bcel.classfile.Attribute[] attributes = method.getAttributes(); + for (int i=0; i<attributes.length; i++) { + org.apache.bcel.classfile.Attribute a = attributes[i]; + if(!(a instanceof Code || a instanceof ExceptionTable)) + sb.append(" [" + a.toString() + "]"); + } + + // print out throws clauses + ExceptionTable e = method.getExceptionTable(); + if (e != null) { + String[] exceptions = e.getExceptionNames(); + if (exceptions.length > 0) { + sb.append(" throws "); + styleList.add(new ByteCodeViewer.StyleMarker(0, sb.length() - 7, sb.length() - 1, Profile.reservedWordColor)); + } + for (int i=0; i<exceptions.length; i++) { + sb.append(makeSimple(exceptions[i])); + if (i < exceptions.length - 1) + sb.append(", "); + } + } + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 101565,101569 **** type=doc-definition section text ram:2507 ! forward-char-select [shift-RIGHT] section components ram:2507 ram:2508 --- 101596,101600 ---- type=doc-definition section text ram:2507 ! forward-char-select section components ram:2507 ram:2508 *************** *** 101572,101576 **** type=doc-definition section text ram:2509 ! forward-word [ctrl-RIGHT] section components ram:2509 ram:2510 --- 101603,101607 ---- type=doc-definition section text ram:2509 ! forward-word section components ram:2509 ram:2510 *************** *** 101579,101583 **** type=doc-definition section text ram:2511 ! forward-word-select [ctrl-shift-RIGHT] section components ram:2511 ram:2512 --- 101610,101614 ---- type=doc-definition section text ram:2511 ! forward-word-select section components ram:2511 ram:2512 *************** *** 101586,101590 **** type=doc-definition section text ram:2513 ! backward-char [LEFT] section components ram:2513 ram:2514 --- 101617,101621 ---- type=doc-definition section text ram:2513 ! backward-char section components ram:2513 ram:2514 *************** *** 101593,101597 **** type=doc-definition section text ram:2515 ! backward-char-select [shift-LEFT] section components ram:2515 ram:2516 --- 101624,101628 ---- type=doc-definition section text ram:2515 ! backward-char-select section components ram:2515 ram:2516 *************** *** 101600,101604 **** type=doc-definition section text ram:2517 ! backward-word [ctrl-LEFT] section components ram:2517 ram:2518 --- 101631,101635 ---- type=doc-definition section text ram:2517 ! backward-word section components ram:2517 ram:2518 *************** *** 101607,101611 **** type=doc-definition section text ram:2519 ! backward-word-select [ctrl-shift-LEFT] section components ram:2519 ram:2520 --- 101638,101642 ---- type=doc-definition section text ram:2519 ! backward-word-select section components ram:2519 ram:2520 *************** *** 101614,101618 **** type=doc-definition section text ram:2521 ! up-line [UP] section components ram:2521 ram:2522 --- 101645,101649 ---- type=doc-definition section text ram:2521 ! up-line section components ram:2521 ram:2522 *************** *** 101621,101625 **** type=doc-definition section text ram:2523 ! up-line-select [shift-UP] section components ram:2523 ram:2524 --- 101652,101656 ---- type=doc-definition section text ram:2523 ! up-line-select section components ram:2523 ram:2524 *************** *** 101628,101632 **** type=doc-definition section text ram:2525 ! down-line [DOWN] section components ram:2525 ram:2526 --- 101659,101663 ---- type=doc-definition section text ram:2525 ! down-line section components ram:2525 ram:2526 *************** *** 101635,101639 **** type=doc-definition section text ram:2527 ! down-line-select [shift-DOWN] section components ram:2527 ram:2528 --- 101666,101670 ---- type=doc-definition section text ram:2527 ! down-line-select section components ram:2527 ram:2528 *************** *** 101642,101646 **** type=doc-definition section text ram:2529 ! start-line [HOME] section components ram:2529 ram:2530 --- 101673,101677 ---- type=doc-definition section text ram:2529 ! start-line section components ram:2529 ram:2530 *************** *** 101649,101653 **** type=doc-definition section text ram:2531 ! start-line-select [shift-HOME] section components ram:2531 ram:2532 --- 101680,101684 ---- type=doc-definition section text ram:2531 ! start-line-select section components ram:2531 ram:2532 *************** *** 101656,101660 **** type=doc-definition section text ram:2533 ! end-line [END] section components ram:2533 ram:2534 --- 101687,101691 ---- type=doc-definition section text ram:2533 ! end-line section components ram:2533 ram:2534 *************** *** 101663,101667 **** type=doc-definition section text ram:2535 ! end-line-select [shift-END] section components ram:2535 ram:2536 --- 101694,101698 ---- type=doc-definition section text ram:2535 ! end-line-select section components ram:2535 ram:2536 *************** *** 101680,101684 **** type=doc-definition section text ram:2538 ! scroll-up-page [PAGEUP] section components ram:2538 ram:2539 --- 101711,101715 ---- type=doc-definition section text ram:2538 ! scroll-up-page section components ram:2538 ram:2539 *************** *** 101687,101691 **** type=doc-definition section text ram:2540 ! scroll-up-line [ctrl-UP] section components ram:2540 ram:2541 --- 101718,101722 ---- type=doc-definition section text ram:2540 ! scroll-up-line section components ram:2540 ram:2541 *************** *** 101694,101698 **** type=doc-definition section text ram:2542 ! scroll-down-page [PAGEDOWN] section components ram:2542 ram:2543 --- 101725,101729 ---- type=doc-definition section text ram:2542 ! scroll-down-page section components ram:2542 ram:2543 *************** *** 101701,101705 **** type=doc-definition section text ram:2544 ! scroll-down-line [ctrl-DOWN] section components ram:2544 ram:2545 --- 101732,101736 ---- type=doc-definition section text ram:2544 ! scroll-down-line section components ram:2544 ram:2545 *************** *** 101728,101732 **** type=doc-definition section text ram:2547 ! cut-text [ctrl-X] section components ram:2547 ram:2548 --- 101759,101763 ---- type=doc-definition section text ram:2547 ! cut-text section components ram:2547 ram:2548 *************** *** 101735,101739 **** type=doc-definition section text ram:2549 ! copy-text [ctrl-C] section components ram:2549 ram:2550 --- 101766,101770 ---- type=doc-definition section text ram:2549 ! copy-text section components ram:2549 ram:2550 *************** *** 101742,101746 **** type=doc-definition section text ram:2551 ! paste-text [ctrl-V] section components ram:2551 ram:2552 --- 101773,101777 ---- type=doc-definition section text ram:2551 ! paste-text section components ram:2551 ram:2552 *************** *** 101756,101760 **** type=doc-definition section text ram:2555 ! split-line [ENTER] section components ram:2555 ram:2556 --- 101787,101791 ---- type=doc-definition section text ram:2555 ! split-line section components ram:2555 ram:2556 *************** *** 101770,101774 **** type=doc-definition section text ram:2559 ! indent-line [ctrl-I] section components ram:2559 ram:2560 --- 101801,101805 ---- type=doc-definition section text ram:2559 ! indent-line section components ram:2559 ram:2560 *************** *** 101777,101781 **** type=doc-definition section text ram:2561 ! kill-line [ctrl-K] section components ram:2561 ram:2562 --- 101808,101812 ---- type=doc-definition section text ram:2561 ! kill-line section components ram:2561 ram:2562 *************** *** 101784,101788 **** type=doc-definition section text ram:2563 ! local-undo [ctrl-Z] section components ram:2563 ram:2564 --- 101815,101819 ---- type=doc-definition section text ram:2563 ! local-undo section components ram:2563 ram:2564 *************** *** 101791,101795 **** type=doc-definition section text ram:2565 ! local-redo [ctrl-Y] section components ram:2565 ram:2566 --- 101822,101826 ---- type=doc-definition section text ram:2565 ! local-redo section components ram:2565 ram:2566 *************** *** 101798,101802 **** type=doc-definition section text ram:2567 ! show-replace-dialog [ctrl-F] section components ram:2567 ram:2568 --- 101829,101833 ---- type=doc-definition section text ram:2567 ! show-replace-dialog section components ram:2567 ram:2568 *************** *** 101822,101826 **** type=doc-definition section text ram:2570 ! cut-fragment [ctrl-shift-X] section components ram:2570 ram:2571 --- 101853,101857 ---- type=doc-definition section text ram:2570 ! cut-fragment section components ram:2570 ram:2571 *************** *** 101829,101833 **** type=doc-definition section text ram:2572 ! copy-fragment [ctrl-shift-C] section components ram:2572 ram:2573 --- 101860,101864 ---- type=doc-definition section text ram:2572 ! copy-fragment section components ram:2572 ram:2573 *************** *** 101836,101840 **** type=doc-definition section text ram:2574 ! paste-fragment [ctrl-shift-V] section components ram:2574 ram:2575 --- 101867,101871 ---- type=doc-definition section text ram:2574 ! paste-fragment section components ram:2574 ram:2575 *************** *** 101850,101854 **** type=doc-definition section text ram:2578 ! commit-container-edits [shift-F12] section components ram:2578 ram:2579 --- 101881,101885 ---- type=doc-definition section text ram:2578 ! commit-container-edits section components ram:2578 ram:2579 *************** *** 101885,101889 **** type=doc-definition section text ram:2587 ! show-query-dialog [ctrl-Q] section components ram:2587 ram:2588 --- 101916,101920 ---- type=doc-definition section text ram:2587 ! show-query-dialog section components ram:2587 ram:2588 *************** *** 101962,101966 **** type=doc-definition section text ram:2609 ! show-fragment-in-context [ctrl-G] section components ram:2609 ram:2610 --- 101993,101997 ---- type=doc-definition section text ram:2609 ! show-fragment-in-context section components ram:2609 ram:2610 *************** *** 101986,101990 **** type=doc-definition section text ram:2616 ! compile-program [F5] section components ram:2616 ram:2617 --- 102017,102021 ---- type=doc-definition section text ram:2616 ! compile-program section components ram:2616 ram:2617 *************** *** 101993,101997 **** type=doc-definition section text ram:2618 ! recompile-program [ctrl-F5] section components ram:2618 ram:2619 --- 102024,102028 ---- type=doc-definition section text ram:2618 ! recompile-program section components ram:2618 ram:2619 *************** *** 102000,102004 **** type=doc-definition section text ram:2620 ! show-compile-dialog [shift-F5] section components ram:2620 ram:2621 --- 102031,102035 ---- type=doc-definition section text ram:2620 ! show-compile-dialog section components ram:2620 ram:2621 *************** *** 102033,102037 **** type=doc-definition section text ram:2625 ! goto-documentation [F1] section components ram:2625 ram:2626 --- 102064,102068 ---- type=doc-definition section text ram:2625 ! goto-documentation section components ram:2625 ram:2626 *************** *** 102092,102096 **** type=doc-definition section text ram:2646 ! wrap-paragraph [ctrl-W] section components ram:2646 ram:2647 --- 102123,102127 ---- type=doc-definition section text ram:2646 ! wrap-paragraph section components ram:2646 ram:2647 *************** *** 102099,102103 **** type=doc-definition section text ram:2649 ! up-fragment [alt-UP] section components ram:2649 ram:2650 --- 102130,102134 ---- type=doc-definition section text ram:2649 ! up-fragment section components ram:2649 ram:2650 *************** *** 102106,102110 **** type=doc-definition section text ram:2653 ! down-fragment [alt-DOWN] section components ram:2653 ram:2654 --- 102137,102141 ---- type=doc-definition section text ram:2653 ! down-fragment section components ram:2653 ram:2654 *************** *** 102113,102117 **** type=doc-definition section text ram:2656 ! start-fragment [alt-HOME] section components ram:2656 ram:2657 --- 102144,102148 ---- type=doc-definition section text ram:2656 ! start-fragment section components ram:2656 ram:2657 *************** *** 102120,102124 **** type=doc-definition section text ram:2659 ! end-fragment [alt-END] section components ram:2659 ram:2660 --- 102151,102155 ---- type=doc-definition section text ram:2659 ! end-fragment section components ram:2659 ram:2660 *************** *** 102127,102131 **** type=doc-definition section text ram:2662 ! start-fragment-select [alt-shift-HOME] section components ram:2662 ram:2664 --- 102158,102162 ---- type=doc-definition section text ram:2662 ! start-fragment-select section components ram:2662 ram:2664 *************** *** 102134,102138 **** type=doc-definition section text ram:2666 ! end-fragment-select [alt-shift-END] section components ram:2666 ram:2667 --- 102165,102169 ---- type=doc-definition section text ram:2666 ! end-fragment-select section components ram:2666 ram:2667 *************** *** 102141,102145 **** type=doc-definition section text ram:2669 ! start-sheet [ctrl-HOME] section components ram:2669 ram:2670 --- 102172,102176 ---- type=doc-definition section text ram:2669 ! start-sheet section components ram:2669 ram:2670 *************** *** 102148,102152 **** type=doc-definition section text ram:2672 ! end-sheet [ctrl-END] section components ram:2672 ram:2673 --- 102179,102183 ---- type=doc-definition section text ram:2672 ! end-sheet section components ram:2672 ram:2673 *************** *** 102183,102187 **** type=doc-definition section text ram:2685 ! extend-fragment [ctrl-E] section components ram:2685 ram:2686 --- 102214,102218 ---- type=doc-definition section text ram:2685 ! extend-fragment section components ram:2685 ram:2686 *************** *** 102218,102222 **** type=doc-definition section text ram:2706 ! copy-fragment-to-temp-sheet [ctrl-N] section components ram:2706 ram:2707 --- 102249,102253 ---- type=doc-definition section text ram:2706 ! copy-fragment-to-temp-sheet section components ram:2706 ram:2707 *************** *** 104345,104349 **** type=doc-definition section text rgs:13462 ! backward-selection [ctrl-PAGEDOWN] section components rgs:13462 rgs:13463 --- 104376,104380 ---- type=doc-definition section text rgs:13462 ! backward-selection section components rgs:13462 rgs:13463 *************** *** 104352,104356 **** type=doc-definition section text rgs:13464 ! forward-selection [ctrl-PAGEUP] section components rgs:13464 rgs:13465 --- 104383,104387 ---- type=doc-definition section text rgs:13464 ! forward-selection section components rgs:13464 rgs:13465 *************** *** 104359,104363 **** type=doc-definition section text rgs:13466 ! backward-char-delete [BACKSPACE] section components rgs:13466 rgs:13467 --- 104390,104394 ---- type=doc-definition section text rgs:13466 ! backward-char-delete section components rgs:13466 rgs:13467 *************** *** 104366,104370 **** type=doc-definition section text rgs:13468 ! forward-char-delete [DELETE] section components rgs:13468 rgs:13469 --- 104397,104401 ---- type=doc-definition section text rgs:13468 ! forward-char-delete section components rgs:13468 rgs:13469 *************** *** 104373,104377 **** type=doc-definition section text rgs:13470 ! commit-fragment-edit [F12] section components rgs:13470 rgs:13471 --- 104404,104408 ---- type=doc-definition section text rgs:13470 ! commit-fragment-edit section components rgs:13470 rgs:13471 *************** *** 104513,104517 **** type=doc-definition section text rgs:13510 ! goto-documentation-for-selected-fragment [ctrl-F1] section components rgs:13510 rgs:13511 --- 104544,104548 ---- type=doc-definition section text rgs:13510 ! goto-documentation-for-selected-fragment section components rgs:13510 rgs:13511 *************** *** 105863,105866 **** --- 105894,105898 ---- schin:713 schin:714 + schin:1252 schin:715 schin:1087 Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** todo.txt 5 May 2003 09:20:04 -0000 1.16 --- todo.txt 6 May 2003 10:03:40 -0000 1.17 *************** *** 6,12 **** Attempt to get a released object when closing editor with a temporary sheet (such as the compile sheet) open - * Java completion: - list throws clauses in external prototypes - * Stuff for Unix: The default monocode font is awful. See if there is a better one for unix. --- 6,9 ---- *************** *** 34,38 **** release criteria: - fix project website skin update license notices in code move graphics to org.browsecode.graphics --- 31,34 ---- |