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: <ox-...@us...> - 2003-04-21 20:27:45
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv23033 Modified Files: Sheets.sheets todo.txt Log Message: Fixed default error formats to handle ant prefixes automatically. Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** Sheets.sheets 21 Apr 2003 19:17:19 -0000 1.39 --- Sheets.sheets 21 Apr 2003 20:27:18 -0000 1.40 *************** *** 10417,10425 **** errorPatterns = new Vector(); // JVC error format ! errorPatterns.addElement(Pattern.compile("([A-Za-z]?:?[-a-zA-Z0-9.$_/\\\\\\\\]+)\\\\(([0-9]+),[0-9]+\\\\) :(.*)")); // JAVAC error format ! errorPatterns.addElement(Pattern.compile("([A-Za-z]?:?[-a-zA-Z0-9.$_/\\\\\\\\]+):([0-9]+): (.*)")); // JIKE's error format ! errorPatterns.addElement(Pattern.compile("([A-Za-z]?:?[-a-zA-Z0-9_$./\\\\\\\\]+):([0-9]+):[0-9]+:[0-9]+:[0-9]+: (.*)")); LanguageExpert.initializeExpert("org.browsecode.sheets.SheetExpert"); --- 10417,10425 ---- errorPatterns = new Vector(); // JVC error format ! errorPatterns.addElement(Pattern.compile("(?: \\\\[javac\\\\])?([A-Za-z]?:?[-a-zA-Z0-9.$_/\\\\\\\\]+)\\\\(([0-9]+),[0-9]+\\\\) :(.*)")); // JAVAC error format ! errorPatterns.addElement(Pattern.compile("(?: \\\\[javac\\\\])?([A-Za-z]?:?[-a-zA-Z0-9.$_/\\\\\\\\]+):([0-9]+): (.*)")); // JIKE's error format ! errorPatterns.addElement(Pattern.compile("(?: \\\\[javac\\\\])?([A-Za-z]?:?[-a-zA-Z0-9_$./\\\\\\\\]+):([0-9]+):[0-9]+:[0-9]+:[0-9]+: (.*)")); LanguageExpert.initializeExpert("org.browsecode.sheets.SheetExpert"); Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** todo.txt 21 Apr 2003 19:17:27 -0000 1.13 --- todo.txt 21 Apr 2003 20:27:29 -0000 1.14 *************** *** 4,12 **** * Work Release Stuff: Improve file management (see below) ! error reporting with ant prefixes? annoying bugs that should be fixed: report full error message for javac - npe on TextualViewer.getSaveRect touch all classes in the package on package-header modification Attempt to get a released object when closing editor with a temporary sheet (such as the compile sheet) open --- 4,11 ---- * Work Release Stuff: Improve file management (see below) ! compile command in menu has to work annoying bugs that should be fixed: report full error message for javac touch all classes in the package on package-header modification Attempt to get a released object when closing editor with a temporary sheet (such as the compile sheet) open |
From: <ox-...@us...> - 2003-04-21 19:18:11
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv15291 Modified Files: .sheetsrc Sheets.sheets todo.txt Log Message: Fixed a bug with importing objectIds that have spaces in them (for instance, if your username has a space in it) Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** .sheetsrc 19 Apr 2003 01:31:22 -0000 1.10 --- .sheetsrc 21 Apr 2003 19:17:19 -0000 1.11 *************** *** 3,18 **** ########################################## ! #set compile-command "ant.bat compile" ! #set recompile-command "ant.bat clean" # Use these instead for *nix systems ! set compile-command "./ant compile" ! set recompile-command "./ant clean" #set windows-task-bar-height 0 #set screen-insets 0 108 0 0 ! # set web-browser "explorer.exe" # Use this instead for *nix systems: ! set web-browser "mozilla" set sheets-documentation-url "doc/reference.html" set java-documentation-url["java.*"] "http://java.sun.com/j2se/1.4/docs/api" --- 3,18 ---- ########################################## ! set compile-command "ant.bat compile" ! set recompile-command "ant.bat clean" # Use these instead for *nix systems ! #set compile-command "./ant compile" ! #set recompile-command "./ant clean" #set windows-task-bar-height 0 #set screen-insets 0 108 0 0 ! set web-browser "explorer.exe" # Use this instead for *nix systems: ! #set web-browser "mozilla" set sheets-documentation-url "doc/reference.html" set java-documentation-url["java.*"] "http://java.sun.com/j2se/1.4/docs/api" Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** Sheets.sheets 19 Apr 2003 01:31:23 -0000 1.38 --- Sheets.sheets 21 Apr 2003 19:17:19 -0000 1.39 *************** *** 8906,8910 **** // so we cut it's food into tiny bite-sized chunks -- this should be revisited. String[] lines = StringSplitter.splitLines(outString); ! if (lines.length > 0 && errorSheet == null) { errorSheet = new Sheet(State.getObjectDatabase(), "Compilation errors", null, null); SentinelMgr.brandNewFragment(errorSheet, --- 8906,8910 ---- // so we cut it's food into tiny bite-sized chunks -- this should be revisited. String[] lines = StringSplitter.splitLines(outString); ! if (errorSheet == null) { errorSheet = new Sheet(State.getObjectDatabase(), "Compilation errors", null, null); SentinelMgr.brandNewFragment(errorSheet, *************** *** 8930,8934 **** unparsedText.append(line + "\\n"); } ! if (errorSheet == null || errorSheet.numFragments() == 0) return null; if (unparsedText.length() > 0) --- 8930,8934 ---- unparsedText.append(line + "\\n"); } ! if (errorSheet.numFragments() == 0) return null; if (unparsedText.length() > 0) *************** *** 88927,88938 **** if (line.startsWith("section ")) { ! String[] words = StringSplitter.split(line, ' '); ! if (words.length != 3) ! throw new Error("Invalid section marker in object " + objectId + ": " ! + line); ! if (!words[2].equals(objectId)) throw new Error("ObjectId mismatch in section marker in object " ! + objectId + ": got " + words[2] + " instead."); ! if (words[1].equals(sectionName)) return true; } --- 88927,88941 ---- if (line.startsWith("section ")) { ! int firstSpace = line.indexOf(' '); ! int secondSpace = line.indexOf(' ', firstSpace + 1); ! if (secondSpace == -1) ! throw new Error("Missing ObjectId in section marker in object " ! + objectId + " on line that reads: " + line); ! String term1 = line.substring(firstSpace + 1, secondSpace); ! String term2 = line.substring(secondSpace + 1); ! if (!term2.equals(objectId)) throw new Error("ObjectId mismatch in section marker in object " ! + objectId + ": got " + term2 + " instead."); ! if (term1.equals(sectionName)) return true; } Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** todo.txt 19 Apr 2003 01:31:25 -0000 1.12 --- todo.txt 21 Apr 2003 19:17:27 -0000 1.13 *************** *** 10,13 **** --- 10,14 ---- npe on TextualViewer.getSaveRect touch all classes in the package on package-header modification + Attempt to get a released object when closing editor with a temporary sheet (such as the compile sheet) open * Java completion: |
From: <ox-...@us...> - 2003-04-21 19:17:46
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv15291/lib Modified Files: bootstrap-sheets.jar Log Message: Fixed a bug with importing objectIds that have spaces in them (for instance, if your username has a space in it) Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 Binary files /tmp/cvspLmlGi and /tmp/cvsNR7dd9 differ |
From: <ox-...@us...> - 2003-04-19 01:31:32
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv28744 Modified Files: .sheetsrc Sheets.sheets todo.txt Log Message: Bugfixes/Enhancements: * Improved DocParser error reporting (so that there is less spamming on import) * Improved export management so that multi-class files are not re-exported in part or whole until one of the classes is touched * Fixed NPE on navigating with fragments currently being edited (was showing up in TextualViewer.getSaveRect) Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** .sheetsrc 16 Apr 2003 19:12:32 -0000 1.9 --- .sheetsrc 19 Apr 2003 01:31:22 -0000 1.10 *************** *** 3,18 **** ########################################## ! set compile-command "ant.bat compile" ! set recompile-command "ant.bat clean" # Use these instead for *nix systems ! #set compile-command "./ant compile" ! #set recompile-command "./ant clean" #set windows-task-bar-height 0 #set screen-insets 0 108 0 0 ! set web-browser "explorer.exe" # Use this instead for *nix systems: ! #set web-browser "mozilla" set sheets-documentation-url "doc/reference.html" set java-documentation-url["java.*"] "http://java.sun.com/j2se/1.4/docs/api" --- 3,18 ---- ########################################## ! #set compile-command "ant.bat compile" ! #set recompile-command "ant.bat clean" # Use these instead for *nix systems ! set compile-command "./ant compile" ! set recompile-command "./ant clean" #set windows-task-bar-height 0 #set screen-insets 0 108 0 0 ! # set web-browser "explorer.exe" # Use this instead for *nix systems: ! set web-browser "mozilla" set sheets-documentation-url "doc/reference.html" set java-documentation-url["java.*"] "http://java.sun.com/j2se/1.4/docs/api" *************** *** 71,77 **** bind graph-java-hierarchy F3 bind make-java-vtable F4 - bind commit-container-edits F10 - bind abort-container-edits ctl-F10 - bind toggle-edit-mode F9 bind wrap-paragraph ALT-W bind extend-fragment ctl-X --- 71,74 ---- Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** Sheets.sheets 16 Apr 2003 19:12:33 -0000 1.37 --- Sheets.sheets 19 Apr 2003 01:31:23 -0000 1.38 *************** *** 5065,5068 **** --- 5065,5070 ---- // If the export location is the same as the location we imported from, then mark it as clean // Do this after adding to the sheet, so that inner class additions don't ripple + ArrayList classList = new ArrayList(); + boolean clean = false; for (int i = 0, j = 0; i < contents.length; i++) { if (contents[i] == null) *************** *** 5072,5076 **** --- 5074,5080 ---- JavaClassFragment classComp = (JavaClassFragment)contents[i]; try { + classList.add(classComp.getArchivalReference()); if (classComp.getExportLocation(Project.findProject(project)).getCanonicalFile().equals(file.getCanonicalFile())) { + clean = true; classComp.classDirty = false; } *************** *** 5080,5083 **** --- 5084,5096 ---- } } + + // If multiple classes are exported to the same file, we don't want to dirty them + // until one of them has been modified. Export Buddies helps us model this + // behavior. + if (clean && classList.size() > 1) { + ArchivalReference[] classArray = new ArchivalReference[classList.size()]; + classArray = (ArchivalReference[])classList.toArray(classArray); + JavaClassFragment.createExportBuddies(classArray); + } } object nkramer:653 *************** *** 5454,5457 **** --- 5467,5473 ---- rgs:8172 wlott:2643 + schin:1240 + schin:1242 + schin:1241 wlott:2664 schin:1229 *************** *** 31283,31286 **** --- 31299,31303 ---- import javax.xml.transform.dom.*; import javax.xml.transform.stream.*; + import org.xml.sax.*; object nkramer:30597 pkg=org.browsecode.xml *************** *** 31291,31295 **** section exports nkramer:30597 nkramer:30603 - nkramer:30753 nkramer:30605 nkramer:30606 --- 31308,31311 ---- *************** *** 31325,31331 **** inputStream.close(); ! Fragment[] comps = parseString(fileContents); ! if (comps.length == 0) ! return; // add nothing // Any top-level fragment will get assigned an id by --- 31341,31356 ---- inputStream.close(); ! Fragment[] comps; ! try { ! DocParser parser = new DocParser(fileContents, null, true); ! comps = parser.fragments; ! } catch (SAXException e) { ! Console.batchedDisplay("Parse 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 ! // up, so the next Language Expert can try parsing the XML file ! return; ! } // Any top-level fragment will get assigned an id by *************** *** 31334,31338 **** for (int i = 0; i < comps.length; i++) DocHelper.assignIdsToChildren(null, comps[i], project, null); ! Fragment result; if (comps.length == 1 && comps[0] instanceof DocDocument) { --- 31359,31363 ---- for (int i = 0; i < comps.length; i++) DocHelper.assignIdsToChildren(null, comps[i], project, null); ! Fragment result; if (comps.length == 1 && comps[0] instanceof DocDocument) { *************** *** 31487,31490 **** --- 31512,31517 ---- schin:1233 schin:177 + schin:1239 + schin:1236 nkramer:30616 nkramer:31710 *************** *** 31521,31530 **** // 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) { ! this.text = text; ! Document doc = textToXml(text, true); ! if (doc != null && doc.getDoctype() != null && DOCUMENT_V11.equals(doc.getDoctype().getPublicId())) ! // only parse the document if it is of the right type ! fragments = retrieveSubFragments(doc.getDocumentElement(), null, links, true); } object nkramer:30618 --- 31548,31553 ---- // 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); } object nkramer:30618 *************** *** 32028,32047 **** return insertMenu; } - object nkramer:30753 - pkg=org.browsecode.xml - type=java - section text nkramer:30753 - // Will always return some fragments, even if there's a syntax error - private static Fragment[] DocExpert.parseString (String text) { - try { - DocParser parser = new DocParser(text, null, true); - Fragment[] comps = parser.fragments; - if (comps != null) - return comps; - } catch (RuntimeException e) { - Console.internalError(e); - } - return new Fragment[] { new UnknownDocFragment(State.getObjectDatabase(), text, null) }; - } object nkramer:30757 pkg=org.browsecode.xml --- 32051,32054 ---- *************** *** 33404,33409 **** // original, rather than the stuff that has been munged by the parser. // We'll do appropriate quoting, etc. on export. ! if (DocParser.textToXml(text, false) == null && !force) return false; replaceWith(new Fragment[]{new DocSource(getArchivalReference().getDatabase(), text, new Vector(0))}, extend, container); return true; --- 33411,33421 ---- // original, rather than the stuff that has been munged by the parser. // We'll do appropriate quoting, etc. on export. ! try { ! if (DocParser.textToXml(text, false) == null && !force) ! return false; ! } catch (SAXException e) { ! // Perhaps we should do something better, like highlight the error return false; + } replaceWith(new Fragment[]{new DocSource(getArchivalReference().getDatabase(), text, new Vector(0))}, extend, container); return true; *************** *** 33475,33487 **** FragmentList container) { ! DocParser parser = new DocParser(xmlText, old.getLinks(), false); ! Fragment[] comps = parser.fragments; ! if (comps == null && !force) { ! // Parse error; parser already explained it to the user ! return false; ! } else if (comps == null && force) { ! old.replaceWith(new UnknownDocFragment(State.getObjectDatabase(), xmlText, null), container); ! return true; ! } else { Vector extensions = null; if (extend) extensions = new Vector(); --- 33487,33493 ---- FragmentList container) { ! try { ! DocParser parser = new DocParser(xmlText, old.getLinks()); ! Fragment[] comps = parser.fragments; Vector extensions = null; if (extend) extensions = new Vector(); *************** *** 33496,33499 **** --- 33502,33515 ---- ((Fragment)extensions.elementAt(i)).startEditing(null, false); return true; + } catch (SAXException e) { + if (!force) { + // Perhaps we should do something better, like highlight the error + Console.internalError(e); + return false; + } else { + // Force the replacement anyway + old.replaceWith(new UnknownDocFragment(State.getObjectDatabase(), xmlText, null), container); + return true; + } } } *************** *** 34701,34710 **** (DocFragment comp, String text, ExportedFile file, int extraIndentation) { ! Document doc = DocParser.textToXml(text, false); ! expandLinks(doc.getDocumentElement(), doc, comp); ! String[] lines = StringSplitter.split(DocParser.xmlToText(doc), '\\n'); ! ! for (int i = 0; i < lines.length; i++) ! file.println(lines[i]); } object nkramer:31528 --- 34717,34731 ---- (DocFragment comp, String text, ExportedFile file, int extraIndentation) { ! try { ! Document doc = DocParser.textToXml(text, false); ! expandLinks(doc.getDocumentElement(), doc, comp); ! String[] lines = StringSplitter.split(DocParser.xmlToText(doc), '\\n'); ! ! 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); ! } } object nkramer:31528 *************** *** 35552,35556 **** // Parses XML text, and returns the structure. // Need to handle the errors better... ! static Document DocParser.textToXml (String text, boolean topLevel) { if (!topLevel) { // enclose non-toplevel tags with a dummy element --- 35573,35577 ---- // 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 *************** *** 35559,35564 **** try { return builder.parse(new StringBufferInputStream(text)); ! } catch (Exception e) { ! Console.internalError(new Exception("Error while trying to parse: " + text, e)); } return null; --- 35580,35585 ---- try { return builder.parse(new StringBufferInputStream(text)); ! } catch (IOException e) { ! Console.internalError(new Exception("IO Error while trying to parse: " + text, e)); } return null; *************** *** 35578,35585 **** (DocFragment comp, Hashtable anchorTable) { ! Document doc = DocParser.textToXml(((Fragment) comp).toString(Fragment.FULL), false); ! boolean changed = convertLinksHelper(doc.getDocumentElement(), doc, comp, anchorTable); ! if (changed) ! ((Fragment) comp).replaceWith(DocParser.xmlToText(doc), true, false, null); } object nkramer:31714 --- 35599,35611 ---- (DocFragment comp, Hashtable anchorTable) { ! try { ! Document doc = DocParser.textToXml(((Fragment) comp).toString(Fragment.FULL), false); ! boolean changed = convertLinksHelper(doc.getDocumentElement(), doc, comp, anchorTable); ! 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); ! } } object nkramer:31714 *************** *** 51760,51763 **** --- 51786,51790 ---- { if (isValid()) return; + if (getViewPainter() == null) return; // can't validate if we have no painter setValid(true); *************** *** 56384,56390 **** // should always be called by height, but let's be explicit. comp.validate(); - if (comp == null) { - Console.internalError("comp == null, how'd that happen?"); - } if (last == null) { int newY = TOP_MARGIN; --- 56411,56414 ---- *************** *** 61554,61558 **** private void Viewer.updateAttrFlags () { attrFlagsHeight = 0; ! if (getViewPanel() == null || getViewPanel().painter == null) return; // because we can't get lineHeight if (!hasAttributes()) return; else if (getView().equals("summary")) --- 61578,61582 ---- private void Viewer.updateAttrFlags () { attrFlagsHeight = 0; ! if (getViewPainter() == null) return; // because we can't get lineHeight if (!hasAttributes()) return; else if (getView().equals("summary")) *************** *** 65136,65139 **** --- 65160,65164 ---- public void setValue(String value) { exportLocation = value; + stateChanged(); } }); *************** *** 69869,69872 **** --- 69894,69903 ---- lastExportID = in.readReference(); exportLocation = in.readUTF(); + int numBuddies = in.readInt(); + if (numBuddies > 0) { + exportBuddies = new ArchivalReference[numBuddies]; + for (int i=0; i<numBuddies; i++) + exportBuddies[i] = in.readReference(); + } } object rgs2:128 *************** *** 69886,69889 **** --- 69917,69927 ---- out.writeReference(lastExportID); out.writeUTF(exportLocation); + if (exportBuddies == null) { + out.writeInt(0); + } else { + out.writeInt(exportBuddies.length); + for (int i=0; i<exportBuddies.length; i++) + out.writeReference(exportBuddies[i]); + } } object rgs2:131 *************** *** 74906,74909 **** --- 74944,74948 ---- { this.exportLocation = exportLocation; + stateChanged(); } object schin:528 *************** *** 82572,82575 **** --- 82611,82691 ---- SwingUtilities.updateComponentTreeUI(Sheets.getRootFrame()); } + object schin:1236 + pkg=org.browsecode.xml + type=java + section text schin:1236 + // 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); + } catch (WrongDocumentTypeException e) { + // cannot occur since it is not top-level + } + } + object schin:1237 + pkg=org.browsecode.xml + type=java + section text schin:1237 + class WrongDocumentTypeException extends Exception + section exports schin:1237 + schin:1238 + object schin:1238 + pkg=org.browsecode.xml + type=java + section text schin:1238 + public WrongDocumentTypeException(String expectedType) { + super("Wrong XML document type. Expected: " + expectedType); + } + object schin:1239 + pkg=org.browsecode.xml + 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())) + // wrong document type + throw new WrongDocumentTypeException(DOCUMENT_V11); + fragments = retrieveSubFragments(doc.getDocumentElement(), null, links, true); + } + object schin:1240 + pkg=org.browsecode.javaStuff + type=java + section text schin:1240 + // A list of classes we are sharing file space with + // This list includes ourself, and is copied by reference to everyone on the list + private ArchivalReference[] JavaClassFragment.exportBuddies; + object schin:1241 + pkg=org.browsecode.javaStuff + type=java + section text schin:1241 + // This will clear the export buddies list, and make everyone dirty so they get + // exported to separate files + void JavaClassFragment.freeExportBuddies() { + ArchivalReference[] buddies = exportBuddies; + for (int i=0; i<buddies.length; i++) { + JavaClassFragment buddy = (JavaClassFragment)buddies[i].getObject(); + buddy.classDirty = true; + buddy.exportBuddies = null; + buddy.stateChanged(); + } + } + object schin:1242 + pkg=org.browsecode.javaStuff + type=java + section text schin:1242 + // This will setup a buddy list for multiple classes sharing a single export file. + // This is only used by import, and the moment the user edits one of these classes, + // they all get dirtied and exported to separate files + static void JavaClassFragment.createExportBuddies(ArchivalReference[] buddies) { + for (int i=0; i<buddies.length; i++) { + JavaClassFragment buddy = (JavaClassFragment)buddies[i].getObject(); + buddy.classDirty = false; + buddy.exportBuddies = buddies; + buddy.stateChanged(); + } + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 90905,90908 **** --- 91021,91026 ---- } else if (!classDirty) { classDirty = true; + if (exportBuddies != null) + freeExportBuddies(); } stateChanged(); *************** *** 100017,100020 **** --- 100135,100141 ---- rgs:8172 wlott:2643 + schin:1240 + schin:1242 + schin:1241 wlott:2664 schin:1229 *************** *** 100334,100338 **** nkramer:30597 nkramer:30603 - nkramer:30753 nkramer:30605 nkramer:30606 --- 100455,100458 ---- *************** *** 100350,100353 **** --- 100470,100476 ---- nkramer:30886 lightWeight:separator + schin:1237 + schin:1238 + lightWeight:separator nkramer:30613 nkramer:30614 *************** *** 100357,100360 **** --- 100480,100485 ---- schin:1233 schin:177 + schin:1239 + schin:1236 nkramer:30616 nkramer:31710 Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** todo.txt 1 Apr 2003 08:26:14 -0000 1.11 --- todo.txt 19 Apr 2003 01:31:25 -0000 1.12 *************** *** 1,8 **** Fixed in this snapshot so far: ! * * Stuff for Unix: - Should change ant to build (to avoid name collision with ant program) - Redrawing across X is very slow (even with anti-aliasing turned off). May be a simple fix (since most of the slowdown is in the main window) The default monocode font is awful. See if there is a better one for unix. --- 1,18 ---- Fixed in this snapshot so far: ! - ! ! * Work Release Stuff: ! Improve file management (see below) ! error reporting with ant prefixes? ! ! annoying bugs that should be fixed: ! report full error message for javac ! npe on TextualViewer.getSaveRect ! touch all classes in the package on package-header modification ! ! * 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. |
From: <ox-...@us...> - 2003-04-16 19:24:34
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv17726/lib Modified Files: bootstrap-sheets.jar Log Message: Checked in a bootstrapped version of the recent changes Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 Binary files /tmp/cvsfnCnxg and /tmp/cvsCCvpci differ |
From: <ox-...@us...> - 2003-04-16 19:12:52
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv14652 Modified Files: .sheetsrc Sheets.sheets Log Message: Fixes: * Fixed corruption in the Sheets.sheets file * Reverted the .sheetsrc file back to work on windows * Added a new feature to set the look-and-feel from the .sheetsrc file (it updates dynamically too!) * Updated the installanywhere config file Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** .sheetsrc 16 Apr 2003 18:00:49 -0000 1.8 --- .sheetsrc 16 Apr 2003 19:12:32 -0000 1.9 *************** *** 3,9 **** ########################################## ! set compile-command "./ant compile" ! set recompile-command "./ant clean" ! #set beep-file "d:/sheets/beep.au" #set windows-task-bar-height 0 --- 3,11 ---- ########################################## ! set compile-command "ant.bat compile" ! set recompile-command "ant.bat clean" ! # Use these instead for *nix systems ! #set compile-command "./ant compile" ! #set recompile-command "./ant clean" #set windows-task-bar-height 0 *************** *** 11,14 **** --- 13,18 ---- set web-browser "explorer.exe" + # Use this instead for *nix systems: + #set web-browser "mozilla" set sheets-documentation-url "doc/reference.html" set java-documentation-url["java.*"] "http://java.sun.com/j2se/1.4/docs/api" *************** *** 27,31 **** set context-help-delay 100 ! set graphics-anti-aliasing false set toc-width 20 set editor-width 50 --- 31,35 ---- set context-help-delay 100 ! set graphics-anti-aliasing true set toc-width 20 set editor-width 50 Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** Sheets.sheets 16 Apr 2003 18:00:50 -0000 1.36 --- Sheets.sheets 16 Apr 2003 19:12:33 -0000 1.37 *************** *** 398,402 **** schin:39 schin:38 - schin:146 ram:2154 nkramer:7373 --- 398,401 ---- *************** *** 8367,8370 **** --- 8366,8370 ---- nkramer:31806 rgs:12128 + schin:1234 rgs:6292 rgs:6291 *************** *** 8390,8393 **** --- 8390,8394 ---- nkramer:1182 nkramer:1185 + schin:1235 nkramer:1549 nkramer:1195 *************** *** 8592,8595 **** --- 8593,8599 ---- } else if (name.equals("graph-font")) { setFontFamily(stream, graphFont); + } else if (name.equals("look-and-feel")) { + lookAndFeel = getString(stream); + updateLookAndFeel(); } else if (name.equals("sheet-height")) { sheetHeight = getInteger(stream); *************** *** 10372,10375 **** --- 10376,10381 ---- docFont = new FontFamily("documentation-font", "TimesRoman"); + lookAndFeel = "com.incors.plaf.kunststoff.KunststoffLookAndFeel"; + updateLookAndFeel(); int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height; // Don't ask how we got these numbers. They seem to work pretty okay. *************** *** 10772,10788 **** static Sheets.<init> { Console.status("Warming up..."); - - try { - // code to use kunststoff (gradiant metal derivative) - UIManager.setLookAndFeel(new com.incors.plaf.kunststoff.KunststoffLookAndFeel()); - // code to use slaf (simple look and feel) - // com.memoire.slaf.SlafLookAndFeel.setCurrentTheme("lothar"); - // UIManager.setLookAndFeel(new com.memoire.slaf.SlafLookAndFeel()); - // code to decorate the outer window - // JFrame.setDefaultLookAndFeelDecorated(true); - } catch (UnsupportedLookAndFeelException e) { - e.printStackTrace(); - // fail gracefully - } } object nkramer:1630 --- 10778,10781 ---- *************** *** 11790,11801 **** section exports nkramer:2281 nkramer:905 - object nkramer:2281 - pkg=org.browsecode.sheets - type=java - section text nkramer:2281 - // Pop up the query dialog with "default defaults". - public class ShowQueryDialog extends GenericShowQueryDialog - section exports nkramer:2281 - nkramer:905 object nkramer:2294 pkg=org.browsecode.sheets --- 11783,11786 ---- *************** *** 16659,16663 **** // We would like the user to know when these occur. public static final void Console.error (Object message) { ! JOptionPane.showMessageDialog(Sheets.rootWindow, message.toString(), "Error", JOptionPane.ERROR_MESSAGE); } object nkramer:5980 --- 16644,16648 ---- // We would like the user to know when these occur. public static final void Console.error (Object message) { ! JOptionPane.showMessageDialog(Sheets.getRootFrame(), message.toString(), "Error", JOptionPane.ERROR_MESSAGE); } object nkramer:5980 *************** *** 30271,30284 **** nkramer:29232 nkramer:29050 - object nkramer:29048 - pkg=org.browsecode.sheets - type=java - section text nkramer:29048 - class CopyFragmentToTempSheet extends ChangeContainerCommand - implements SpecialMultiCommand - section exports nkramer:29048 - nkramer:29049 - nkramer:29232 - nkramer:29050 object nkramer:29049 pkg=org.browsecode.sheets --- 30256,30259 ---- *************** *** 31320,31327 **** nkramer:30606 nkramer:30607 ! nkramer:2281 nkramer:30609 nkramer:30610 ! nkramer:29048 nkramer:30612 rgs:13569 --- 31295,31302 ---- nkramer:30606 nkramer:30607 ! nkramer:30608 nkramer:30609 nkramer:30610 ! nkramer:30611 nkramer:30612 rgs:13569 *************** *** 31417,31420 **** --- 31392,31408 ---- return StringSplitter.stripExtension(srcFile) + ".html"; } + object nkramer:30608 + pkg=org.browsecode.xml + type=java + section text nkramer:30608 + protected String[] DocExpert.persistenceTypes () { + return new String[] { "doc-para", "doc-source", + "doc-document", "doc-section", "doc-list", "doc-definition", + "doc-edit-command", "doc-edit-variable", + + // backwards compatibility + "xml-para", "xml-section", "xml-list", "doc-preformatted" + }; + } object nkramer:30609 pkg=org.browsecode.xml *************** *** 31470,31473 **** --- 31458,31468 ---- }; } + object nkramer:30611 + pkg=org.browsecode.xml + type=java + section text nkramer:30611 + protected Sentinel[] DocExpert.sentinels () { + return new Sentinel[] { new DocSentinel() }; + } object nkramer:30612 pkg=org.browsecode.xml *************** *** 31530,31533 **** --- 31525,31529 ---- Document doc = textToXml(text, true); if (doc != null && doc.getDoctype() != null && DOCUMENT_V11.equals(doc.getDoctype().getPublicId())) + // only parse the document if it is of the right type fragments = retrieveSubFragments(doc.getDocumentElement(), null, links, true); } *************** *** 48248,48252 **** // unintended consequences. public static final void Console.warning (Object message) { ! JOptionPane.showMessageDialog(Sheets.rootWindow, message.toString(), "Warning", JOptionPane.WARNING_MESSAGE); } object rgs:291 --- 48244,48248 ---- // unintended consequences. public static final void Console.warning (Object message) { ! JOptionPane.showMessageDialog(Sheets.getRootFrame(), message.toString(), "Warning", JOptionPane.WARNING_MESSAGE); } object rgs:291 *************** *** 68224,68227 **** --- 68220,68224 ---- slot="4">getName</link>, or <link slot="5">getInteger</link>. section links rgs:13937 + schin:1235 nkramer:1549 nkramer:1197 *************** *** 70044,70056 **** return "Java fragments " + base + " named " + fullString; } - object ram:683 - pkg=org.browsecode.sheets - type=java - section text ram:683 - class ReferencesRecord - section exports ram:683 - ram:684 - ram:685 - ram:686 object schin:0 pkg=org.browsecode.sheets --- 70041,70044 ---- *************** *** 70363,70366 **** --- 70351,70356 ---- { rootFrame.init(createRootSheet(), createContextSheet(), EditMgr.createEditSheet(), createAffectedBySheet()); + // forces the menubar to use the right L&F + SwingUtilities.updateComponentTreeUI(Sheets.getRootFrame()); rootFrame.setVisible(true); } *************** *** 71208,71217 **** return makeWindowTitle(); } - object schin:146 - pkg=org.browsecode.sheets - type=java - section text schin:146 - // The SheetFrame that the root sheet goes in. - public static SheetFrame Sheets.rootWindow = null; object schin:147 pkg=org.browsecode.sheets --- 71198,71201 ---- *************** *** 82069,82076 **** public class SimpleNodeList implements NodeList section exports schin:1185 ! ram:683 schin:1187 schin:1188 schin:1189 object schin:1187 pkg=org.browsecode.xml --- 82053,82065 ---- public class SimpleNodeList implements NodeList section exports schin:1185 ! schin:1186 schin:1187 schin:1188 schin:1189 + object schin:1186 + pkg=org.browsecode.xml + type=java + section text schin:1186 + Node SimpleNodeList.node; object schin:1187 pkg=org.browsecode.xml *************** *** 82559,82562 **** --- 82548,82575 ---- section text schin:1233 static final String DocParser.DOCUMENT_V11 = "-//APACHE//DTD Documentation V1.1//EN"; + object schin:1234 + pkg=org.browsecode.sheets + type=java + section text schin:1234 + public static String Profile.lookAndFeel; + object schin:1235 + pkg=org.browsecode.sheets + type=java + section text schin:1235 + static void Profile.updateLookAndFeel() { + try { + // recognize some constants + if (lookAndFeel.equals("system")) + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + else if (lookAndFeel.equals("cross-platform")) + UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); + else + UIManager.setLookAndFeel(lookAndFeel); + } catch (Exception e) { + // fail gracefully + } + // update the look and feel immediately + SwingUtilities.updateComponentTreeUI(Sheets.getRootFrame()); + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 95116,95120 **** wlott:833 schin:37 - schin:146 schin:39 schin:38 --- 95129,95132 ---- *************** *** 95813,95816 **** --- 95825,95829 ---- rgs:12128 nkramer:15093 + schin:1234 rgs:6292 rgs:6291 *************** *** 95839,95842 **** --- 95852,95856 ---- nkramer:1182 nkramer:1185 + schin:1235 nkramer:1549 nkramer:1195 |
From: <ox-...@us...> - 2003-04-16 19:12:48
|
Update of /cvsroot/sheets/sheets/installer In directory sc8-pr-cvs1:/tmp/cvs-serv14652/installer Modified Files: Sheets.iap_xml Log Message: Fixes: * Fixed corruption in the Sheets.sheets file * Reverted the .sheetsrc file back to work on windows * Added a new feature to set the look-and-feel from the .sheetsrc file (it updates dynamically too!) * Updated the installanywhere config file Index: Sheets.iap_xml =================================================================== RCS file: /cvsroot/sheets/sheets/installer/Sheets.iap_xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Sheets.iap_xml 3 Jul 2002 07:36:16 -0000 1.3 --- Sheets.iap_xml 16 Apr 2003 19:12:44 -0000 1.4 *************** *** 1,17 **** <?xml version="1.0" encoding="UTF-8"?> ! <!-- This script was automatically generated using Zero G's InstallAnywhere 5.0.2 Standard, Build 1559 STATUS: Fully Functional LICENSED Edition ! DATE: Wed Jul 03 00:16:59 PDT 2002 --> ! <InstallAnywhere_Deployment_Project increments="1245"> <!-- ** DO NOT EDIT ** Essential authorization and configuration data ** DO NOT EDIT ** --> <essentialScriptInfo> ! <versionID major="5" minor="0" revision="2"/> ! <editionID>53,46,48,46,50,32,83,116,97,110,100,97,114,100,32,66,117,105,108,100,32,49,53,53,57</editionID> ! <scriptID>12,42,11,90,80,49,49,55,52,67,54,52,56,56,85,52</scriptID> <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,-32,-61,82,48,-80,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,5,6,20,127,14,0,0,0</authorizationID> </essentialScriptInfo> ! <installationObjects uniqueObjects="62"> <object class="com.zerog.ia.installer.Installer" objectID="7e3307a0b772"> <property name="wizardME"> --- 1,17 ---- <?xml version="1.0" encoding="UTF-8"?> ! <!-- This script was automatically generated using Zero G's InstallAnywhere 5.0.7 Standard, Build 1680 STATUS: Fully Functional LICENSED Edition ! DATE: Fri Apr 11 00:38:18 PDT 2003 --> ! <InstallAnywhere_Deployment_Project increments="1261"> <!-- ** DO NOT EDIT ** Essential authorization and configuration data ** DO NOT EDIT ** --> <essentialScriptInfo> ! <versionID major="5" minor="0" revision="7"/> ! <editionID>53,46,48,46,55,32,83,116,97,110,100,97,114,100,32,66,117,105,108,100,32,49,54,56,48</editionID> ! <scriptID>12,42,11,90,80,53,50,48,52,67,54,52,56,56,85,52</scriptID> <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,115,-93,16,48,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,15,5,25,123,4,0,0,0</authorizationID> </essentialScriptInfo> ! <installationObjects uniqueObjects="63"> <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="e2d524aeb734"> <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="8f286c308eaf"> <property name="propertyValue"> <string><![CDATA[org.browsecode.sheets.Sheets]]></string> *************** *** 225,229 **** <object class="java.util.Vector"> <method name="addElement"> ! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="7e3a1b19b78c"> <property name="unixPermissions"> <string><![CDATA[664]]></string> --- 225,229 ---- <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> *************** *** 245,249 **** </property> <property name="fileSize"> ! <long>1437219</long> </property> <property name="macBinary"> --- 245,249 ---- </property> <property name="fileSize"> ! <long>5219927</long> </property> <property name="macBinary"> *************** *** 409,416 **** </property> <property name="resourcePath"> ! <string><![CDATA[C:\sheets\]]></string> </property> <property name="resourceName"> ! <string><![CDATA[LICENSE.txt]]></string> </property> <property name="sourceFileType"> --- 409,416 ---- </property> <property name="resourcePath"> ! <string><![CDATA[C:\sheets\legal\]]></string> </property> <property name="resourceName"> ! <string><![CDATA[LICENSE.sheets]]></string> </property> <property name="sourceFileType"> *************** *** 693,697 **** <method name="put"> <string><![CDATA[com.zerog.ia.project.save.last.date]]></string> ! <string><![CDATA[Wed Jul 03 00:16:58 PDT 2002]]></string> </method> <method name="put"> --- 693,697 ---- <method name="put"> <string><![CDATA[com.zerog.ia.project.save.last.date]]></string> ! <string><![CDATA[Fri Apr 11 00:38:18 PDT 2003]]></string> </method> <method name="put"> *************** *** 705,709 **** <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.unix.path]]></string> ! <string><![CDATA[SunJRE140LinuxINTEL.vm]]></string> </method> <method name="put"> --- 705,709 ---- <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.unix.path]]></string> ! <string><![CDATA[SunJRE141_02LinuxINTEL.vm]]></string> </method> <method name="put"> *************** *** 725,729 **** <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.solaris.path]]></string> ! <string><![CDATA[SunJRE140SolarisSPARC.vm]]></string> </method> <method name="put"> --- 725,729 ---- <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.solaris.path]]></string> ! <string><![CDATA[SunJRE141_02SolarisSPARC.vm]]></string> </method> <method name="put"> *************** *** 737,741 **** <method name="put"> <string><![CDATA[com.zerog.ia.project.build.last.date]]></string> ! <string><![CDATA[Wed Jun 19 11:17:06 PDT 2002]]></string> </method> <method name="put"> --- 737,741 ---- <method name="put"> <string><![CDATA[com.zerog.ia.project.build.last.date]]></string> ! <string><![CDATA[Fri Apr 11 00:38:18 PDT 2003]]></string> </method> <method name="put"> *************** *** 745,749 **** <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.linux.path]]></string> ! <string><![CDATA[SunJRE140LinuxINTEL.vm]]></string> </method> <method name="put"> --- 745,749 ---- <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.linux.path]]></string> ! <string><![CDATA[SunJRE141_02LinuxINTEL.vm]]></string> </method> <method name="put"> *************** *** 773,777 **** <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.windows.path]]></string> ! <string><![CDATA[SunJRE140Win32.vm]]></string> </method> <method name="put"> --- 773,777 ---- <method name="put"> <string><![CDATA[com.zerog.ia.build.vmpack.windows.path]]></string> ! <string><![CDATA[SunJRE141_02Win32.vm]]></string> </method> <method name="put"> *************** *** 865,869 **** </property> <property name="shortName"> ! <string><![CDATA[]]></string> </property> <property name="installSetName"> --- 865,869 ---- </property> <property name="shortName"> ! <string><![CDATA[Custom]]></string> </property> <property name="installSetName"> *************** *** 967,971 **** </property> <property name="shortName"> ! <string><![CDATA[]]></string> </property> <property name="installSetName"> --- 967,971 ---- </property> <property name="shortName"> ! <string><![CDATA[Typical]]></string> </property> <property name="installSetName"> *************** *** 984,988 **** </property> <property name="shortName"> ! <string><![CDATA[]]></string> </property> <property name="preferredLocalizationVariant"> --- 984,988 ---- </property> <property name="shortName"> ! <string><![CDATA[Application]]></string> </property> <property name="preferredLocalizationVariant"> *************** *** 1006,1010 **** </property> <property name="shortName"> ! <string><![CDATA[]]></string> </property> <property name="uniqueId"> --- 1006,1010 ---- </property> <property name="shortName"> ! <string><![CDATA[Common]]></string> </property> <property name="uniqueId"> *************** *** 1031,1034 **** --- 1031,1035 ---- </property> <installChildren> + <object refID="7e3307c8b784"/> <object class="com.zerog.ia.installer.actions.Comment" objectID="7e3307b5b77d"> <property name="commentStr"> *************** *** 1062,1068 **** <object refID="7e3307b5b77d"/> <object class="com.zerog.ia.installer.actions.InstallUninstaller" objectID="7e3307b4b77e"> - <property name="installer"> - <object refID="7e3307a0b772"/> - </property> <property name="unixPermissions"> <string><![CDATA[777]]></string> --- 1063,1066 ---- *************** *** 1242,1246 **** </visualChildren> </object> - <object refID="7e3307c8b784"/> <object class="com.zerog.ia.installer.actions.CreateShortcut" objectID="7e3307c8b78a"> <property name="targetAction"> --- 1240,1243 ---- *************** *** 1260,1269 **** </property> </object> ! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="7e3a1b0fb78a"> <property name="unixPermissions"> <string><![CDATA[664]]></string> </property> <property name="sourceName"> ! <string><![CDATA[antlr.jar]]></string> </property> <property name="overrideUnixPermissions"> --- 1257,1286 ---- </property> </object> ! <object class="com.zerog.ia.installer.actions.SpeedRegistry" objectID="c3468281b756"> ! <property name="resourceName"> ! <string><![CDATA[FileAssociations.zgr]]></string> ! </property> ! <property name="resourcePath"> ! <string><![CDATA[C:\sheets\installer]]></string> ! </property> ! <property name="useFile"> ! <boolean>true</boolean> ! </property> ! <property name="comment"> ! <string><![CDATA[File Associations]]></string> ! </property> ! <property name="propertyList"> ! <object class="java.util.Vector"/> ! </property> ! <property name="uninstallOptions"> ! <int>1</int> ! </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"> *************** *** 1277,1284 **** </property> <property name="destinationName"> ! <string><![CDATA[antlr.jar]]></string> </property> <property name="fileSize"> ! <long>71695</long> </property> <property name="macBinary"> --- 1294,1301 ---- </property> <property name="destinationName"> ! <string><![CDATA[antlrall.jar]]></string> </property> <property name="fileSize"> ! <long>318236</long> </property> <property name="macBinary"> *************** *** 1286,1295 **** </property> </object> ! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="7e3a1b19b78a"> <property name="unixPermissions"> <string><![CDATA[664]]></string> </property> <property name="sourceName"> ! <string><![CDATA[jlfgr-1_0.jar]]></string> </property> <property name="overrideUnixPermissions"> --- 1303,1312 ---- </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"> *************** *** 1303,1310 **** </property> <property name="destinationName"> ! <string><![CDATA[jlfgr-1_0.jar]]></string> </property> <property name="fileSize"> ! <long>114580</long> </property> <property name="macBinary"> --- 1320,1327 ---- </property> <property name="destinationName"> ! <string><![CDATA[bcel.jar]]></string> </property> <property name="fileSize"> ! <long>521125</long> </property> <property name="macBinary"> *************** *** 1312,1321 **** </property> </object> ! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="7e3a1b1ab78a"> <property name="unixPermissions"> <string><![CDATA[664]]></string> </property> <property name="sourceName"> ! <string><![CDATA[kunststoff.jar]]></string> </property> <property name="overrideUnixPermissions"> --- 1329,1338 ---- </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"> *************** *** 1329,1336 **** </property> <property name="destinationName"> ! <string><![CDATA[kunststoff.jar]]></string> </property> <property name="fileSize"> ! <long>43888</long> </property> <property name="macBinary"> --- 1346,1353 ---- </property> <property name="destinationName"> ! <string><![CDATA[jlfgr-1_0.jar]]></string> </property> <property name="fileSize"> ! <long>114580</long> </property> <property name="macBinary"> *************** *** 1338,1347 **** </property> </object> ! <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="7e3a1b19b78b"> <property name="unixPermissions"> <string><![CDATA[664]]></string> </property> <property name="sourceName"> ! <string><![CDATA[ox.jar]]></string> </property> <property name="overrideUnixPermissions"> --- 1355,1364 ---- </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"> *************** *** 1355,1362 **** </property> <property name="destinationName"> ! <string><![CDATA[ox.jar]]></string> </property> <property name="fileSize"> ! <long>162902</long> </property> <property name="macBinary"> --- 1372,1379 ---- </property> <property name="destinationName"> ! <string><![CDATA[kunststoff.jar]]></string> </property> <property name="fileSize"> ! <long>43888</long> </property> <property name="macBinary"> *************** *** 1364,1388 **** </property> </object> ! <object refID="7e3a1b19b78c"/> ! <object class="com.zerog.ia.installer.actions.SpeedRegistry" objectID="c3468281b756"> ! <property name="resourceName"> ! <string><![CDATA[FileAssociations.zgr]]></string> </property> ! <property name="resourcePath"> ! <string><![CDATA[C:\sheets\installer]]></string> </property> ! <property name="useFile"> <boolean>true</boolean> </property> ! <property name="comment"> ! <string><![CDATA[File Associations]]></string> </property> ! <property name="propertyList"> ! <object class="java.util.Vector"/> </property> ! <property name="uninstallOptions"> ! <int>1</int> </property> </object> </installChildren> </object> --- 1381,1411 ---- </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>170088</long> </property> ! <property name="macBinary"> ! <boolean>false</boolean> </property> </object> + <object refID="8ebe7d278ec3"/> </installChildren> </object> *************** *** 1444,1452 **** <object refID="7e3307b4b77d"/> <object refID="7e3307c8b784"/> ! <object refID="7e3a1b0fb78a"/> ! <object refID="7e3a1b19b78a"/> ! <object refID="7e3a1b1ab78a"/> ! <object refID="7e3a1b19b78b"/> ! <object refID="7e3a1b19b78c"/> <object refID="c3468281b756"/> </visualChildren> --- 1467,1476 ---- <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> |
From: <ox-...@us...> - 2003-04-16 18:01:03
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv17219 Modified Files: .sheetsrc Sheets.sheets build.xml Log Message: the doc parser now checks the public id before parsing arbitrary documents (no more error messages on random xml files) Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** .sheetsrc 1 Apr 2003 02:21:07 -0000 1.7 --- .sheetsrc 16 Apr 2003 18:00:49 -0000 1.8 *************** *** 3,8 **** ########################################## ! set compile-command "ant.bat compile" ! set recompile-command "ant.bat clean" #set beep-file "d:/sheets/beep.au" --- 3,8 ---- ########################################## ! set compile-command "./ant compile" ! set recompile-command "./ant clean" #set beep-file "d:/sheets/beep.au" *************** *** 27,31 **** set context-help-delay 100 ! set graphics-anti-aliasing true set toc-width 20 set editor-width 50 --- 27,31 ---- set context-help-delay 100 ! set graphics-anti-aliasing false set toc-width 20 set editor-width 50 Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** Sheets.sheets 2 Apr 2003 19:00:34 -0000 1.35 --- Sheets.sheets 16 Apr 2003 18:00:50 -0000 1.36 *************** *** 11790,11793 **** --- 11790,11801 ---- section exports nkramer:2281 nkramer:905 + object nkramer:2281 + pkg=org.browsecode.sheets + type=java + section text nkramer:2281 + // Pop up the query dialog with "default defaults". + public class ShowQueryDialog extends GenericShowQueryDialog + section exports nkramer:2281 + nkramer:905 object nkramer:2294 pkg=org.browsecode.sheets *************** *** 30263,30266 **** --- 30271,30284 ---- nkramer:29232 nkramer:29050 + object nkramer:29048 + pkg=org.browsecode.sheets + type=java + section text nkramer:29048 + class CopyFragmentToTempSheet extends ChangeContainerCommand + implements SpecialMultiCommand + section exports nkramer:29048 + nkramer:29049 + nkramer:29232 + nkramer:29050 object nkramer:29049 pkg=org.browsecode.sheets *************** *** 31302,31309 **** nkramer:30606 nkramer:30607 ! nkramer:30608 nkramer:30609 nkramer:30610 ! nkramer:30611 nkramer:30612 rgs:13569 --- 31320,31327 ---- nkramer:30606 nkramer:30607 ! nkramer:2281 nkramer:30609 nkramer:30610 ! nkramer:29048 nkramer:30612 rgs:13569 *************** *** 31399,31415 **** return StringSplitter.stripExtension(srcFile) + ".html"; } - object nkramer:30608 - pkg=org.browsecode.xml - type=java - section text nkramer:30608 - protected String[] DocExpert.persistenceTypes () { - return new String[] { "doc-para", "doc-source", - "doc-document", "doc-section", "doc-list", "doc-definition", - "doc-edit-command", "doc-edit-variable", - - // backwards compatibility - "xml-para", "xml-section", "xml-list", "doc-preformatted" - }; - } object nkramer:30609 pkg=org.browsecode.xml --- 31417,31420 ---- *************** *** 31465,31475 **** }; } - object nkramer:30611 - pkg=org.browsecode.xml - type=java - section text nkramer:30611 - protected Sentinel[] DocExpert.sentinels () { - return new Sentinel[] { new DocSentinel() }; - } object nkramer:30612 pkg=org.browsecode.xml --- 31470,31473 ---- *************** *** 31492,31495 **** --- 31490,31494 ---- schin:175 schin:176 + schin:1233 schin:177 nkramer:30616 *************** *** 31530,31534 **** this.text = text; Document doc = textToXml(text, true); ! if (doc != null) fragments = retrieveSubFragments(doc.getDocumentElement(), null, links, true); } --- 31529,31533 ---- this.text = text; Document doc = textToXml(text, true); ! if (doc != null && doc.getDoctype() != null && DOCUMENT_V11.equals(doc.getDoctype().getPublicId())) fragments = retrieveSubFragments(doc.getDocumentElement(), null, links, true); } *************** *** 70045,70048 **** --- 70044,70056 ---- return "Java fragments " + base + " named " + fullString; } + object ram:683 + pkg=org.browsecode.sheets + type=java + section text ram:683 + class ReferencesRecord + section exports ram:683 + ram:684 + ram:685 + ram:686 object schin:0 pkg=org.browsecode.sheets *************** *** 71459,71463 **** builder.setEntityResolver(new org.xml.sax.EntityResolver() { public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) { ! if (publicId.equals("-//APACHE//DTD Documentation V1.1//EN")) { return new org.xml.sax.InputSource(this.getClass().getResourceAsStream("dtd/document-v11.dtd")); } --- 71467,71471 ---- builder.setEntityResolver(new org.xml.sax.EntityResolver() { public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) { ! if (publicId.equals(DOCUMENT_V11)) { return new org.xml.sax.InputSource(this.getClass().getResourceAsStream("dtd/document-v11.dtd")); } *************** *** 82061,82073 **** public class SimpleNodeList implements NodeList section exports schin:1185 ! schin:1186 schin:1187 schin:1188 schin:1189 - object schin:1186 - pkg=org.browsecode.xml - type=java - section text schin:1186 - Node SimpleNodeList.node; object schin:1187 pkg=org.browsecode.xml --- 82069,82076 ---- public class SimpleNodeList implements NodeList section exports schin:1185 ! ram:683 schin:1187 schin:1188 schin:1189 object schin:1187 pkg=org.browsecode.xml *************** *** 82551,82554 **** --- 82554,82562 ---- super(); } + object schin:1233 + pkg=org.browsecode.xml + type=java + section text schin:1233 + static final String DocParser.DOCUMENT_V11 = "-//APACHE//DTD Documentation V1.1//EN"; object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 100333,100336 **** --- 100341,100345 ---- schin:175 schin:176 + schin:1233 schin:177 nkramer:30616 Index: build.xml =================================================================== RCS file: /cvsroot/sheets/sheets/build.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** build.xml 17 Jan 2003 22:42:39 -0000 1.16 --- build.xml 16 Apr 2003 18:00:53 -0000 1.17 *************** *** 91,94 **** --- 91,97 ---- <echo>Launching test...</echo> <java classname="org.browsecode.sheets.Sheets" maxmemory="192m" dir="${test}" fork="true"> + <!-- Fix for Solaris pref spaming --> + <jvmarg value="-Djava.util.prefs.syncInterval=2000000"/> + <arg line="${arg.sheets}"/> <arg value="${test-database}"/> *************** *** 134,137 **** --- 137,143 ---- <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"/> + <arg line="${arg.sheets}"/> <arg line="${arg.extra}"/> |
From: <ox-...@us...> - 2003-04-02 19:01:50
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv2884 Modified Files: Sheets.sheets Log Message: Fixed a bug relating to inner classes with the conservative export feature Fixed a major slowdown on X relating to transparency (remember to turn graphicsAntialiasing off) Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** Sheets.sheets 1 Apr 2003 08:25:55 -0000 1.34 --- Sheets.sheets 2 Apr 2003 19:00:34 -0000 1.35 *************** *** 363,372 **** section text nkramer:6 // Takes an existing "program as a sequence of characters" file, ! // and turns it into a single fragment (usually a sheet). Shouldn't ! // ever have to return null (that's what exceptions are for!) // "sharedCreations" contains common state for components that should be // referenced multiply rather than being redundantly created (such as Java // package headers.) ! abstract public Fragment LanguageExpert.importFile(File file, String project, int exportOptions, UVector sharedCreations) throws IOException; object nkramer:9 pkg=org.browsecode.sheets [...1058 lines suppressed...] - rgs:13144 - rgs:13148 - schin:193 - rgs:13162 - rgs:13187 - rgs:13190 - rgs:13160 - rgs:13149 - rgs:13150 - rgs:13151 - rgs:13152 - rgs:13145 - rgs:13146 - rgs:13191 - rgs:13164 - rgs:13154 - rgs:13155 object ram:2109 title=Applying --- 101707,101710 ---- |
From: <ox-...@us...> - 2003-04-02 19:01:41
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv2884/lib Modified Files: bootstrap-sheets.jar Log Message: Fixed a bug relating to inner classes with the conservative export feature Fixed a major slowdown on X relating to transparency (remember to turn graphicsAntialiasing off) Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 Binary files /tmp/cvsDbthxk and /tmp/cvsZ2wuer differ |
From: <ox-...@us...> - 2003-04-01 08:28:01
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv13205 Modified Files: Sheets.sheets todo.txt Log Message: Don't unnecessarily mark files as dirty on import Distinguish between dirty files and files that should be "touched" When importing, do not populate default project import location. Empty project root was causing problems on default import entry Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** Sheets.sheets 1 Apr 2003 02:21:07 -0000 1.33 --- Sheets.sheets 1 Apr 2003 08:25:55 -0000 1.34 *************** *** 5038,5049 **** } } - // Don't bother exporting imported classes if the location is the same - try { - if (classComp.getExportLocation(Project.findProject(project)).getCanonicalFile().equals(file.getCanonicalFile())) { - classComp.classDirty = false; - } - } catch (IOException e) { - // guess the class is dirty... - } } else if (comp instanceof JavaFileHeaderFragment) { String newPkg = comp.trueNameString(); --- 5038,5041 ---- *************** *** 5065,5068 **** --- 5057,5061 ---- } + // Add separators between multiple classes in the same file Fragment[] comps = new Fragment[contents.length + extraFrags]; for (int i = 0, j = 0; i < contents.length; i++) { *************** *** 5086,5089 **** --- 5079,5100 ---- } } + + // If the export location is the same as the location we imported from, then mark it as clean + for (int i = 0, j = 0; i < contents.length; i++) { + if (contents[i] == null) + continue; + if (contents[i] instanceof JavaClassFragment && + ((JavaClassFragment)contents[i]).trueName.length == 1) { + JavaClassFragment classComp = (JavaClassFragment)contents[i]; + try { + if (classComp.getExportLocation(Project.findProject(project)).getCanonicalFile().equals(file.getCanonicalFile())) { + classComp.classDirty = false; + } + } catch (IOException e) { + // leave the class as dirty... + } + } + } + return result; } *************** *** 5462,5465 **** --- 5473,5477 ---- wlott:2643 wlott:2664 + schin:1229 wlott:2629 wlott:2639 *************** *** 62166,62176 **** Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. Hack: Marking the class ! // as dirty is actually slight overkill, but it's what we have the hooks ! // for. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).setClassDirty(); } Vector result = VectorUtils.make(calls); --- 62178,62186 ---- Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).touchForRecompile(); } Vector result = VectorUtils.make(calls); *************** *** 62198,62208 **** Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. Hack: Marking the class ! // as dirty is actually slight overkill, but it's what we have the hooks ! // for. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).setClassDirty(); } Vector result = VectorUtils.make(calls); --- 62208,62216 ---- Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).touchForRecompile(); } Vector result = VectorUtils.make(calls); *************** *** 62230,62240 **** Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. Hack: Marking the class ! // as dirty is actually slight overkill, but it's what we have the hooks ! // for. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).setClassDirty(); } Vector result = VectorUtils.make(calls); --- 62238,62246 ---- Query query = new JavaFragmentUsesQuery(this); Fragment[] calls = query.getQueryResults(null); ! // Affected items really ought to be recompiled. for (int i = 0; i < calls.length; i++) { JavaClassInterface cls = ((JavaFragment)calls[i]).enclosingClass(); if (cls instanceof JavaClassFragment) ! ((JavaClassFragment)cls).touchForRecompile(); } Vector result = VectorUtils.make(calls); *************** *** 73669,73673 **** importFiles.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ! setNext(new FileImportCard()); templateList.setEnabled(false); } --- 73675,73679 ---- importFiles.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ! setNext(new FileImportCard(true)); templateList.setEnabled(false); } *************** *** 73767,73771 **** type=java section text schin:363 ! WizardCard ProjectContentsCard.next = new FileImportCard(); object schin:364 pkg=org.browsecode.sheets.archive --- 73773,73777 ---- type=java section text schin:363 ! WizardCard ProjectContentsCard.next = new FileImportCard(true); object schin:364 pkg=org.browsecode.sheets.archive *************** *** 73803,73806 **** --- 73809,73815 ---- public class FileImportCard extends StyledDocumentCard section exports schin:368 + schin:1230 + schin:1231 + schin:1232 schin:401 schin:370 *************** *** 74097,74101 **** section text schin:397 FileImportCard.ImportItem(File file) { ! this.file = file; importType = fullSourceButton; exportLocation = relativeExportButton; --- 74106,74114 ---- section text schin:397 FileImportCard.ImportItem(File file) { ! // Work around a bug with an empty directory name: ! if (file.getName().equals("")) ! this.file = new File("."); ! else ! this.file = file; importType = fullSourceButton; exportLocation = relativeExportButton; *************** *** 74148,74155 **** if (rootImportItem != null) importModel.removeElement(rootImportItem); ! String projectName = (String)getProperty("project"); ! Project project = Project.findProject(projectName); ! if (project != null && project.getRootFrag() != null) ! importModel.add(0, rootImportItem = new ImportItem(new File(project.getRootFrag().root))); } object schin:403 --- 74161,74170 ---- if (rootImportItem != null) importModel.removeElement(rootImportItem); ! if (addProjectRoot) { ! String projectName = (String)getProperty("project"); ! Project project = Project.findProject(projectName); ! if (project != null && project.getRootFrag() != null) ! importModel.add(0, rootImportItem = new ImportItem(new File(project.getRootFrag().root))); ! } } object schin:403 *************** *** 83126,83129 **** --- 83141,83181 ---- section text schin:1228 public final static String ProjectFragment.DEFAULT_CLASSPATH = "${java.class.path}"; + object schin:1229 + pkg=org.browsecode.javaStuff + type=java + section text schin:1229 + // Rather than calling setClassDirty, call this method to indicate that + // the class should be recompiled, but has not changed. + void JavaClassFragment.touchForRecompile () { + if (trueName.length > 1) { + // handle inner classes + JavaClassInterface cls = JavaSentinel.getClass(enclosingClassName(), this, false); + if (cls instanceof JavaClassFragment) ((JavaClassFragment)cls).touchForRecompile(); + } else { + File file = getExportLocation(getProject()); + if (file.exists()) + file.setLastModified(System.currentTimeMillis()); + } + } + object schin:1230 + pkg=org.browsecode.sheets.archive + type=java + section text schin:1230 + boolean FileImportCard.addProjectRoot; + object schin:1231 + pkg=org.browsecode.sheets.archive + type=java + section text schin:1231 + public FileImportCard(boolean addProjectRoot) { + super(); + this.addProjectRoot = addProjectRoot; + } + object schin:1232 + pkg=org.browsecode.sheets.archive + type=java + section text schin:1232 + public FileImportCard() { + super(); + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 91364,91368 **** type=java section text wlott:2629 ! // PoArchivalReferences to an ExportRecord if this class's been exported before private ArchivalReference JavaClassFragment.lastExportID = State.getObjectDatabase().getNull(); object wlott:2639 --- 91416,91420 ---- type=java section text wlott:2629 ! // PoArchivalReferences to an ExportRecord if this class has been exported before private ArchivalReference JavaClassFragment.lastExportID = State.getObjectDatabase().getNull(); object wlott:2639 *************** *** 91460,91468 **** classDirty = true; } - // not quite sure what I am breaking by doing this, but this interferes with line numbering: - /* else if (!lastExportID.isNull()) { - getLastExport().dispose(true); - lastExportID = State.getObjectDatabase().getNull(); - } */ stateChanged(); } --- 91512,91515 ---- *************** *** 100594,100597 **** --- 100641,100645 ---- wlott:2643 wlott:2664 + schin:1229 wlott:2629 wlott:2639 *************** *** 102143,102146 **** --- 102191,102197 ---- schin:427 schin:399 + schin:1230 + schin:1231 + schin:1232 schin:401 schin:370 Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** todo.txt 1 Apr 2003 02:21:09 -0000 1.10 --- todo.txt 1 Apr 2003 08:26:14 -0000 1.11 *************** *** 8,13 **** * Better File Management: - Don't unnecessarily mark files as dirty on import - Distinguish between dirty files and files that should be "touched" Prompt for deletion of files on disk Cache timestamp in export map and use for overwrite warnings --- 8,11 ---- *************** *** 148,152 **** Don't open sheets main window when set to immediate export Deprecate sheets properties (display sheet as a menu, etc.). Color sheets according to whether they are exported, and whether they contain subsheets. - When importing, do not populate default project import location. After adding an item to the import list, select it. Automatically set selection to first field/button in wizard. --- 146,149 ---- |
From: <ox-...@us...> - 2003-04-01 08:27:25
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv13205/lib Modified Files: bootstrap-sheets.jar Log Message: Don't unnecessarily mark files as dirty on import Distinguish between dirty files and files that should be "touched" When importing, do not populate default project import location. Empty project root was causing problems on default import entry Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 Binary files /tmp/cvsnNz5PN and /tmp/cvsE9c7kl differ |
From: <ox-...@us...> - 2003-04-01 02:21:22
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv1658 Modified Files: .sheetsrc Sheets.sheets ant todo.txt Log Message: Fixed a bug where a bad docsheet import could hose the system. Fixed some NullPointerExceptions related to importing into the default UnknownProject Updated the ant script to get it back up to date Removed reference to XQuery module in .sheetsrc Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** .sheetsrc 23 Dec 2002 13:39:31 -0000 1.6 --- .sheetsrc 1 Apr 2003 02:21:07 -0000 1.7 *************** *** 21,25 **** ########################################## - #set language-expert "com.vitria.xquery.editor.XQueryExpert" set global-undo-history-size 1 #show-with java-package-name --- 21,24 ---- Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** Sheets.sheets 31 Jan 2003 19:34:42 -0000 1.32 --- Sheets.sheets 1 Apr 2003 02:21:07 -0000 1.33 *************** *** 31482,31485 **** --- 31482,31488 ---- Fragment[] comps = parseString(fileContents); + if (comps.length == 0) + return null; + // Any top-level fragment will get assigned an id by // makeImportSheet, but for nested components we need to *************** *** 31830,31840 **** if (comp != null && comp instanceof DocFragment) { comps.addElement(comp); ! DocFragment newComp = (DocFragment) comp; ! NamedNodeMap attributes = child.getAttributes(); ! for (int j=0; j<attributes.getLength(); i++) { ! Attr attr = (Attr)attributes.item(j); ! if (attr.getName().startsWith("anchor")) { ! ScalarAttribute anchor = newComp.getAnchorAttribute(); ! anchor.changeValue(anchor.getValue() + "\\n" + attr.getValue()); } } --- 31833,31845 ---- if (comp != null && comp instanceof DocFragment) { comps.addElement(comp); ! if (!(comp instanceof UnknownDocFragment)) { ! DocFragment newComp = (DocFragment) comp; ! NamedNodeMap attributes = child.getAttributes(); ! for (int j=0; j<attributes.getLength(); i++) { ! Attr attr = (Attr)attributes.item(j); ! if (attr.getName().startsWith("anchor")) { ! ScalarAttribute anchor = newComp.getAnchorAttribute(); ! anchor.changeValue(anchor.getValue() + "\\n" + attr.getValue()); ! } } } *************** *** 43452,43455 **** --- 43457,43461 ---- ram:2060 schin:195 + schin:1228 schin:1038 schin:1039 *************** *** 75536,75540 **** fileName.append(exportLocation); fileName.append(File.separatorChar); ! } else if (!project.getRootFrag().getRoot().equals("")) { basePath = new File(project.getRootFrag().getRoot(), exportLocation); fileName.append(basePath.getPath()); --- 75542,75546 ---- fileName.append(exportLocation); fileName.append(File.separatorChar); ! } else if (project.getRootFrag() != null && !project.getRootFrag().getRoot().equals("")) { basePath = new File(project.getRootFrag().getRoot(), exportLocation); fileName.append(basePath.getPath()); *************** *** 81384,81388 **** type=java section text schin:1038 ! String ProjectFragment.classPath = "${java.class.path}"; object schin:1039 pkg=org.browsecode.sheets.archive --- 81390,81394 ---- type=java section text schin:1038 ! String ProjectFragment.classPath = DEFAULT_CLASSPATH; object schin:1039 pkg=org.browsecode.sheets.archive *************** *** 81436,81441 **** public JavaRepositoryHelper Project.getJavaRepository () { ! if (repositoryHelper == null) ! repositoryHelper = JavaRepositorySet.getRepositoryHelper(getRootFrag().getPlatformClassPath()); return repositoryHelper; } --- 81442,81450 ---- public JavaRepositoryHelper Project.getJavaRepository () { ! if (repositoryHelper == null) { ! ProjectFragment root = getRootFrag(); ! String classpath = root == null ? ProjectFragment.DEFAULT_CLASSPATH : root.getPlatformClassPath(); ! repositoryHelper = JavaRepositorySet.getRepositoryHelper(classpath); ! } return repositoryHelper; } *************** *** 83112,83115 **** --- 83121,83129 ---- } } + object schin:1228 + pkg=org.browsecode.sheets.archive + type=java + section text schin:1228 + public final static String ProjectFragment.DEFAULT_CLASSPATH = "${java.class.path}"; object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 102065,102068 **** --- 102079,102083 ---- schin:200 schin:195 + schin:1228 schin:1038 schin:1039 Index: ant =================================================================== RCS file: /cvsroot/sheets/sheets/ant,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ant 6 Dec 2002 03:03:40 -0000 1.5 --- ant 1 Apr 2003 02:21:09 -0000 1.6 *************** *** 1,2 **** #! /bin/sh ! java -Xmx128m -classpath $JAVA_HOME/lib/tools.jar:lib/ant.jar:lib/antlrall.jar:$CLASSPATH org.apache.tools.ant.Main -emacs "$@" --- 1,2 ---- #! /bin/sh ! java -Xmx128m -classpath $JAVA_HOME/lib/tools.jar:tools/ant.jar:lib/antlrall.jar:$CLASSPATH org.apache.tools.ant.Main -emacs "$@" Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** todo.txt 31 Jan 2003 19:34:56 -0000 1.9 --- todo.txt 1 Apr 2003 02:21:09 -0000 1.10 *************** *** 1,4 **** Fixed in this snapshot so far: ! x Currently Working On: --- 1,18 ---- Fixed in this snapshot so far: ! * ! ! * Stuff for Unix: ! Should change ant to build (to avoid name collision with ant program) ! Redrawing across X is very slow (even with anti-aliasing turned off). May be a simple fix (since most of the slowdown is in the main window) ! The default monocode font is awful. See if there is a better one for unix. ! ! * Better File Management: ! Don't unnecessarily mark files as dirty on import ! Distinguish between dirty files and files that should be "touched" ! Prompt for deletion of files on disk ! Cache timestamp in export map and use for overwrite warnings ! Nice to have -- ! Capability to import modified files on disk (checked on startup, or by command) ! Capability to resolve diff between changes on disk and in sheets (checked on export, or import) Currently Working On: *************** *** 87,99 **** Add JDepend, Checksite results Integrate generated documentation (see documentation section above) - - * Better File Management: - Don't unnecessarily mark files as dirty on import - Distinguish between dirty files and files that should be "touched" - Prompt for deletion of files on disk - Cache timestamp in export map and use for overwrite warnings - Nice to have -- - Capability to import modified files on disk (checked on startup, or by command) - Capability to resolve diff between changes on disk and in sheets (checked on export, or import) * ByteCode Completion --- 101,104 ---- |
From: <ox-...@us...> - 2003-03-04 00:17:04
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv13271/lib Modified Files: bootstrap-sheets.jar Log Message: Update bootstrap Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 Binary files /tmp/cvsu18DOn and /tmp/cvswbUzGp differ |
From: <ox-...@us...> - 2003-01-31 19:35:33
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv19479 Modified Files: Sheets.sheets todo.txt Log Message: Added an extensible toolbar framework (So Language Experts can add new toolbars to the UI) Fixed a bug in crashRecovery that would throw an NPE on recovering lost fragments Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** Sheets.sheets 17 Jan 2003 22:42:33 -0000 1.31 --- Sheets.sheets 31 Jan 2003 19:34:42 -0000 1.32 *************** *** 346,349 **** --- 346,350 ---- nkramer:2166 schin:258 + schin:1213 rgs:11528 nkramer:27597 *************** *** 355,358 **** --- 356,360 ---- rgs:13430 rgs:13431 + schin:1214 schin:256 object nkramer:6 *************** *** 25470,25473 **** --- 25472,25478 ---- else setLabel(command.getMenuName(superfluous) + " (" + key.toString() + ")"); + Icon icon = command.getIcon(); + if (icon != null) + setIcon(icon); addActionListener(this); } *************** *** 38467,38475 **** // place any lost objects in a sheet where the user can do what they will // with them. ! private static void Sheets.checkForCrash () { // Copy the transient references vector so that we can create the lost sheet // frame without adding to the original set of transient references. Vector copy = getTransientReferences().toVector(); Fragment[] lostComps = getRootlessTransients(); if (lostComps.length > 0) { --- 38472,38481 ---- // place any lost objects in a sheet where the user can do what they will // with them. ! private static Sheet Sheets.checkForCrash () { // Copy the transient references vector so that we can create the lost sheet // frame without adding to the original set of transient references. Vector copy = getTransientReferences().toVector(); + Sheet lostStuff = null; Fragment[] lostComps = getRootlessTransients(); if (lostComps.length > 0) { *************** *** 38477,38484 **** // Note: causes them to be contained so thatthe removeTransientReference // below doesn't actually delete them. ! Sheet lostStuff ! = new Sheet(State.getObjectDatabase(), "Lost Stuff", "Stuff recovered when Sheets crashed.", lostComps); SentinelMgr.brandNewFragment(lostStuff, Profile.getFavoriteProject()); - Sheets.getRootFrame().addSheet(new SheetFrame(lostStuff)); } --- 38483,38488 ---- // Note: causes them to be contained so thatthe removeTransientReference // below doesn't actually delete them. ! lostStuff = new Sheet(State.getObjectDatabase(), "Lost Stuff", "Stuff recovered when Sheets crashed.", lostComps); SentinelMgr.brandNewFragment(lostStuff, Profile.getFavoriteProject()); } *************** *** 38488,38491 **** --- 38492,38497 ---- removeTransientReference(comp); } + + return lostStuff; } object ram:634 *************** *** 38696,38708 **** // meaningful, since the idiom for invoking a command in Java code // is new FooCommand().checkAndExecute(...) ! public abstract class EditCommand section documentation ram:675 rgs:13922 section exports ram:675 nkramer:750 nkramer:14814 rgs:8366 schin:21 schin:22 nkramer:751 nkramer:15031 --- 38702,38718 ---- // meaningful, since the idiom for invoking a command in Java code // is new FooCommand().checkAndExecute(...) ! public abstract class EditCommand implements ActionListener section documentation ram:675 rgs:13922 section exports ram:675 nkramer:750 + schin:1216 nkramer:14814 rgs:8366 + schin:1218 schin:21 + schin:1219 schin:22 + schin:1217 nkramer:751 nkramer:15031 *************** *** 38718,38721 **** --- 38728,38732 ---- nkramer:29152 nkramer:752 + schin:1215 nkramer:754 object ram:679 *************** *** 54584,54588 **** new CopyFragmentToTempSheet().addToMenu(menu, ignore); } else if (type == VIEW) ! fillViewMenu(menu, true); } object rgs:8316 --- 54595,54599 ---- new CopyFragmentToTempSheet().addToMenu(menu, ignore); } else if (type == VIEW) ! fillViewMenu(menu, false); } object rgs:8316 *************** *** 60841,60844 **** --- 60852,60858 ---- setLabel(command.getMenuName(superfluous) + " (" + key.toString() + ")"); } + Icon icon = command.getIcon(); + if (icon != null) + setIcon(icon); setState(currentlyOn); addItemListener(this); *************** *** 60948,60960 **** type=java section text rgs:11649 ! public void Viewer.fillViewMenu (JPopupMenu menu, boolean includeViewAs) { Vector views = null; ! if (includeViewAs) { ! views = getParent().possibleViewsFor(this); ! String currentView = getView(); ! for (int i = 0; i < views.size(); i++) { ! String view = (String)views.elementAt(i); ! new ShowAs(view).addToMenu(menu, null, view.equals(currentView)); ! } } int viewAsEnd = menu.getComponentCount(); --- 60962,60972 ---- type=java section text rgs:11649 ! public void Viewer.fillViewMenu (JPopupMenu menu, boolean fromControlBlock) { Vector views = null; ! views = getParent().possibleViewsFor(this); ! String currentView = getView(); ! for (int i = 0; i < views.size(); i++) { ! String view = (String)views.elementAt(i); ! new ShowAs(view).addToMenu(menu, null, view.equals(currentView)); } int viewAsEnd = menu.getComponentCount(); *************** *** 60987,60991 **** menu.add(showMenu); } ! if (includeViewAs && views.size() > 0 && menu.getComponentCount() > viewAsEnd) menu.insert(new JPopupMenu.Separator(), viewAsEnd); } --- 60999,61003 ---- menu.add(showMenu); } ! if (views.size() > 0 && menu.getComponentCount() > viewAsEnd) menu.insert(new JPopupMenu.Separator(), viewAsEnd); } *************** *** 67232,67235 **** --- 67244,67248 ---- nkramer:3066 rgs:13431 + schin:1214 object rgs:13627 pkg=org.browsecode.sheets *************** *** 70768,70772 **** // superfluous. public void EditCommand.addToMenu (Container menu, String[] superfluous) { ! menu.add(new SimpleCommandMenuItem(this, superfluous)); } object schin:22 --- 70781,70785 ---- // superfluous. public void EditCommand.addToMenu (Container menu, String[] superfluous) { ! menu.add(createMenuItem(superfluous)); } object schin:22 *************** *** 70777,70781 **** public void EditCommand.addToMenu (Container menu, String[] superfluous, boolean currentlySet) { ! menu.add(new CheckedCommandMenuItem(this, superfluous, currentlySet)); } object schin:23 --- 70790,70794 ---- public void EditCommand.addToMenu (Container menu, String[] superfluous, boolean currentlySet) { ! menu.add(createMenuItem(superfluous, currentlySet)); } object schin:23 *************** *** 81305,81310 **** setFocusTraversalKeys(KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, backwardSet); toolbar = new Toolbar(this); ! getContentPane().add(BorderLayout.NORTH, toolbar); indexTabs = new JTabbedPane(JTabbedPane.BOTTOM); --- 81318,81328 ---- setFocusTraversalKeys(KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, backwardSet); + JPanel toolbarStrip = new JPanel(new FlowLayout(FlowLayout.LEADING, 0, 0)); toolbar = new Toolbar(this); ! toolbarStrip.add(toolbar); ! JToolBar[] toolbars = LanguageExpert.getAllToolbars(); ! for (int i=0; i<toolbars.length; i++) ! toolbarStrip.add(toolbars[i]); ! getContentPane().add(BorderLayout.NORTH, toolbarStrip); indexTabs = new JTabbedPane(JTabbedPane.BOTTOM); *************** *** 82950,82953 **** --- 82968,83115 ---- super.saveCoreInfo(writer); } + object schin:1213 + pkg=org.browsecode.sheets + type=java + section text schin:1213 + public static JToolBar[] LanguageExpert.getAllToolbars () { + ArrayList toolbars = new ArrayList(); + for (int i = 0; i < allExperts.size(); i++) { + JToolBar toolbar = ((LanguageExpert)allExperts.get(i)).getToolBar(); + if (toolbar != null) + toolbars.add(toolbar); + } + return (JToolBar[])toolbars.toArray(new JToolBar[0]); + } + object schin:1214 + pkg=org.browsecode.sheets + type=java + section text schin:1214 + // A toolbar that will get added to the Sheets interface when this Language Expert is loaded + public JToolBar LanguageExpert.getToolBar() { return null; } + object schin:1215 + pkg=org.browsecode.sheets + type=java + section text schin:1215 + // Convenience function for calling commands via a standard ActionListener interface. + public void EditCommand.actionPerformed(ActionEvent e) { + ViewPanel vp = Sheets.getRootFrame().getVisibleContainer().getEditor(); + Viewer selected = vp.selectedFragment(); + if (selected != null) { + checkAndExecute(vp, selected); + if (Profile.recenterAgressively && selected != null) + vp.recenter(selected, ViewPanel.CLOSEST, 0, selected.baseHeight()); + vp.update(); + } + } + object schin:1216 + pkg=org.browsecode.sheets + type=java + section text schin:1216 + // An icon used to represent this command on buttons and in menus + public Icon EditCommand.getIcon() { return null; } + object schin:1217 + pkg=org.browsecode.sheets + type=java + section text schin:1217 + public JButton EditCommand.createButton (String[] superfluous) { + JButton commandButton = new JButton(getMenuName(superfluous)); + commandButton.addActionListener(this); + Icon icon = getIcon(); + if (icon != null) + commandButton.setIcon(icon); + return commandButton; + } + object schin:1218 + pkg=org.browsecode.sheets + type=java + section text schin:1218 + public JMenuItem EditCommand.createMenuItem (String[] superfluous) { + return new SimpleCommandMenuItem(this, superfluous); + } + object schin:1219 + pkg=org.browsecode.sheets + type=java + section text schin:1219 + public JMenuItem EditCommand.createMenuItem (String[] superfluous, boolean currentlySet) { + return new CheckedCommandMenuItem(this, superfluous, currentlySet); + } + object schin:1221 + pkg=org.browsecode.util + type=java + section text schin:1221 + // Very simple cell renderer that assumes the elements in the list are JComponents + // and asks them to do the rendering for themselves. + public class PassThroughCellRenderer implements ListCellRenderer + section exports schin:1221 + schin:1222 + schin:1223 + object schin:1222 + pkg=org.browsecode.util + type=java + section text schin:1222 + static javax.swing.border.Border PassThroughCellRenderer.noFocusBorder; + object schin:1223 + pkg=org.browsecode.util + type=java + section text schin:1223 + public Component PassThroughCellRenderer.getListCellRendererComponent (JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { + JComponent comp = (JComponent)value; + + comp.setComponentOrientation(list.getComponentOrientation()); + if (isSelected) { + comp.setBackground(list.getSelectionBackground()); + comp.setForeground(list.getSelectionForeground()); + } + else { + comp.setBackground(list.getBackground()); + comp.setForeground(list.getForeground()); + } + comp.setEnabled(list.isEnabled()); + comp.setFont(list.getFont()); + + if (noFocusBorder == null) + noFocusBorder = new javax.swing.border.EmptyBorder(1, 1, 1, 1); + comp.setBorder(cellHasFocus ? UIManager.getBorder("List.focusCellHighlightBorder") : noFocusBorder); + + return comp; + } + object schin:1224 + pkg=org.browsecode.util + type=java + section text schin:1224 + // Simple class that assumes the component that will register itself with + // the combo box given in the constructor, and redirect all action events + // to the components which were selected. This all works under the assumption + // that all the elements in the combo box are buttons (if they are not, nothing will + // happen). + public class PassThroughComboListener implements ActionListener + section exports schin:1224 + schin:1225 + schin:1226 + schin:1227 + object schin:1225 + pkg=org.browsecode.util + type=java + section text schin:1225 + JComboBox PassThroughComboListener.comboBox; + object schin:1226 + pkg=org.browsecode.util + type=java + section text schin:1226 + public PassThroughComboListener(JComboBox comboBox) { + this.comboBox = comboBox; + comboBox.addActionListener(this); + } + object schin:1227 + pkg=org.browsecode.util + type=java + section text schin:1227 + public void PassThroughComboListener.actionPerformed(ActionEvent e) { + Object selected = comboBox.getSelectedItem(); + if (selected instanceof AbstractButton) { + AbstractButton button = (AbstractButton)selected; + button.doClick(); + } + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 88207,88211 **** scanFilenames(state); initDatabase(state); ! checkForCrash(); loadFiles(state); startOpenRequestServer(state); --- 88369,88373 ---- scanFilenames(state); initDatabase(state); ! Sheet lostStuff = checkForCrash(); loadFiles(state); startOpenRequestServer(state); *************** *** 88227,88230 **** --- 88389,88395 ---- }); + if (lostStuff != null) + Sheets.getRootFrame().addSheet(new SheetFrame(lostStuff)); + if (state.immediateExport) { exportSheets(true); // export all *************** *** 95045,95049 **** panel = ((ContainerFrame)container).getEditor(); else { ! Console.internalError(container + " isn't a ViewPanel or ContainerFrame"); return; } --- 95210,95214 ---- panel = ((ContainerFrame)container).getEditor(); else { ! Console.internalError("Couldn't find container for Edit Command"); return; } *************** *** 95882,95889 **** --- 96047,96058 ---- ram:674 nkramer:750 + schin:1216 nkramer:14814 rgs:8366 + schin:1218 schin:21 + schin:1219 schin:22 + schin:1217 nkramer:751 nkramer:15031 *************** *** 95899,95902 **** --- 96068,96072 ---- nkramer:29152 nkramer:752 + schin:1215 nkramer:754 nkramer:755 *************** *** 96587,96590 **** --- 96757,96761 ---- nkramer:3066 rgs:13431 + schin:1214 rgs:13627 nkramer:1679 *************** *** 96595,96598 **** --- 96766,96770 ---- nkramer:2166 schin:258 + schin:1213 nkramer:27597 nkramer:2167 *************** *** 96780,96783 **** --- 96952,96956 ---- schin:134 rgs:12596 + schin:1220 object nkramer:2465 title=Sorting *************** *** 106835,106838 **** --- 107008,107027 ---- schin:1201 schin:1202 + object schin:1220 + title=ComboBox Util + type=sheet + section text schin:1220 + ComboBox Util + section components schin:1220 + nkramer:2460 + lightWeight:separator + schin:1221 + schin:1222 + schin:1223 + lightWeight:separator + schin:1224 + schin:1225 + schin:1226 + schin:1227 object sjc:6 title=ClickableLabel Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** todo.txt 17 Jan 2003 22:42:39 -0000 1.8 --- todo.txt 31 Jan 2003 19:34:56 -0000 1.9 *************** *** 1,11 **** Fixed in this snapshot so far: ! Fixed the bytecode support so that it handles jar classpaths ! Updated version of bcel.jar ! Fixed import and export of DocDocument fragments to/from the dump file ! Documents now export proper xml headers, and import public references properly. ! Greatly improved performance of deleting large number of fragments ! ! Check-in Todo: ! Add dtds to cvs Currently Working On: --- 1,4 ---- Fixed in this snapshot so far: ! x Currently Working On: *************** *** 20,23 **** --- 13,21 ---- XML-ize this todo list so that it can be rendered on the web page by forrest, and create a sheets mode for editing it. Add a status dialog on deletion of 100+ fragments to show progress + Fix Java lookup on like-named classes in different packages (use the java file header to differentiate) + + Misc Stuff: + New Project dialog should not give a choice to import (likewise, import should have a submenu to choose a project or file) + Problem deleting projects (get an error on retrieving a gc'ed object) release criteria: |
From: <ox-...@us...> - 2003-01-31 19:35:33
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv19479/lib Modified Files: bootstrap-sheets.jar Log Message: Added an extensible toolbar framework (So Language Experts can add new toolbars to the UI) Fixed a bug in crashRecovery that would throw an NPE on recovering lost fragments Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 Binary files /tmp/cvsHbZp2x and /tmp/cvsL0gCV0 differ |
From: <ox-...@us...> - 2003-01-17 22:43:17
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv19415 Modified Files: Sheets.sheets build.xml todo.txt Log Message: Fixed the bytecode support so that it handles jar classpaths Updated version of bcel.jar Fixed import and export of DocDocument fragments to/from the dump file Documents now export proper xml headers, and import public references properly. Greatly improved performance of deleting large number of fragments Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** Sheets.sheets 23 Dec 2002 13:39:31 -0000 1.30 --- Sheets.sheets 17 Jan 2003 22:42:33 -0000 1.31 *************** *** 1128,1135 **** g.setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), 80)); g.drawRect(0, 1, width(), baseHeight() - 1); ! g.setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), 60)); g.drawRect(1, 2, width() - 1, baseHeight() - 2); - g.setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), 20)); - g.drawRect(2, 3, width() - 2, baseHeight() - 3); } object nkramer:92 --- 1128,1133 ---- g.setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), 80)); g.drawRect(0, 1, width(), baseHeight() - 1); ! g.setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), 40)); g.drawRect(1, 2, width() - 1, baseHeight() - 2); } object nkramer:92 *************** *** 5164,5167 **** --- 5162,5166 ---- import javax.swing.*; import java.util.*; + import java.util.jar.*; import java.io.*; import java.util.regex.*; *************** *** 10336,10340 **** } ! Vector results = sortResults(doFullSearch(possibilities)); Fragment[] res = new Fragment[results.size()]; --- 10335,10341 ---- } ! Vector results = possibilities.size() == 0 ? possibilities : doFullSearch(possibilities); ! if (results.size() > 1) ! results = sortResults(results); Fragment[] res = new Fragment[results.size()]; *************** *** 15542,15552 **** Font oldFont = g.getFont(); - // The oldClip stuff should do the right thing, and would be much more efficient - // than creating and disposing Graphics objects. Alas, at least one VM (SDK2.0) - // seems to do the wrong thing. Bummer. - // NOTE: Putting back the oldClip stuff to try it out... if this works, delete these comments Shape oldClip = null; if (leftSide > 0) { - // g = (Graphics2D)g.create(); oldClip = g.getClip(); g.setClip(0, 0, width(), height()); --- 15543,15548 ---- *************** *** 15571,15575 **** g.translate(leftSide, 0); g.setClip(oldClip); - // g.dispose(); } } --- 15567,15570 ---- *************** *** 31512,31516 **** return DocSource.loadSource(reader); else if (type.equals("doc-document")) ! return DocSection.loadSection(reader); else if (type.equals("doc-section")) return DocSection.loadSection(reader); --- 31507,31511 ---- return DocSource.loadSource(reader); else if (type.equals("doc-document")) ! return DocDocument.loadDocument(reader); else if (type.equals("doc-section")) return DocSection.loadSection(reader); *************** *** 32474,32480 **** throws IOException { - writer.putAttribute("type", getArchivalType()); writer.putAttribute("ordered", (isOrdered) ? "true" : "false"); ! writeText(writer); } object nkramer:30835 --- 32469,32474 ---- throws IOException { writer.putAttribute("ordered", (isOrdered) ? "true" : "false"); ! super.saveCoreInfo(writer); } object nkramer:30835 *************** *** 32600,32603 **** --- 32594,32602 ---- throws IOException { + // write the XML header + file.println("<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>"); + file.println("<!DOCTYPE document PUBLIC \\"-//APACHE//DTD Documentation V1.1//EN\\">"); + file.println(""); + file.beginFragment(this, extraIndentation); file.println("<document" + DocHelper.attributeList(this) + ">"); *************** *** 48797,48800 **** --- 48796,48800 ---- protected Vector JavaFragmentUsesQuery.quickSearch () { + Vector result = null; int searchFor = JSTNode.ANYTHING_REFERENCED; if (target instanceof JavaMethodFragment) *************** *** 48803,48807 **** searchFor = JSTNode.FIELDS_REFERENCED; else if (target instanceof JavaClassFragment) { ! Vector result = new Vector(); VectorUtils.append(result, JavaSentinel.lookup(target.simpleName(), JSTNode.CLASSES_REFERENCED)); --- 48803,48807 ---- searchFor = JSTNode.FIELDS_REFERENCED; else if (target instanceof JavaClassFragment) { ! result = new Vector(); VectorUtils.append(result, JavaSentinel.lookup(target.simpleName(), JSTNode.CLASSES_REFERENCED)); *************** *** 48809,48816 **** JavaSentinel.lookup(target.simpleName(), JSTNode.CONSTRUCTORS_REFERENCED)); - return result; } else if (target instanceof JavaConstructorFragment) { // We have to deal with the weird "super()" and "this()" constructs ! Vector result = new Vector(); VectorUtils.append(result, JavaSentinel.lookup(target.simpleName(), JSTNode.CONSTRUCTORS_REFERENCED)); --- 48809,48815 ---- JavaSentinel.lookup(target.simpleName(), JSTNode.CONSTRUCTORS_REFERENCED)); } else if (target instanceof JavaConstructorFragment) { // We have to deal with the weird "super()" and "this()" constructs ! result = new Vector(); VectorUtils.append(result, JavaSentinel.lookup(target.simpleName(), JSTNode.CONSTRUCTORS_REFERENCED)); *************** *** 48833,48839 **** } } - return result; } ! return JavaSentinel.lookup(target.simpleName(), searchFor); } object rgs:2256 --- 48832,48839 ---- } } } ! if (result == null) ! result = JavaSentinel.lookup(target.simpleName(), searchFor); ! return result; } object rgs:2256 *************** *** 52346,52351 **** mayBeDeadFrags.setSize(0); ! for (int i = 0; i < sentinels.size(); i++) ((Sentinel)sentinels.get(i)).finalizeEvents(); // Hack: Calling "displayBatchedMessages" is not logically part of our job, --- 52346,52352 ---- mayBeDeadFrags.setSize(0); ! for (int i = 0; i < sentinels.size(); i++) { ((Sentinel)sentinels.get(i)).finalizeEvents(); + } // Hack: Calling "displayBatchedMessages" is not logically part of our job, *************** *** 59035,59038 **** --- 59036,59042 ---- static boolean JavaFragmentUsesQuery.fragmentUses (JavaFragment comp, JavaFragment target) { + // huge optimization on deleting large number of fragments together + if (target.planeOfExistence() < Fragment.IN_THE_PROGRAM) return false; + String name = target.simpleName(); JavaClassInterface context = comp.enclosingClass(); *************** *** 62006,62010 **** for (int i = deleted.size() - 1; i >= 0; i--) { Fragment oldFrag = (Fragment)deleted.elementAt(i); ! Fragment newFrag = oldFrag.sameInterface(added); if (newFrag != null) { pairedReplacements.addElement(oldFrag); --- 62010,62014 ---- for (int i = deleted.size() - 1; i >= 0; i--) { Fragment oldFrag = (Fragment)deleted.elementAt(i); ! Fragment newFrag = added.size() == 0 ? null : oldFrag.sameInterface(added); if (newFrag != null) { pairedReplacements.addElement(oldFrag); *************** *** 62015,62019 **** Vector possibilities = oldFrag.affectedBy(); int count = 0; ! if (possibilities != null) for (int j = 0; j < possibilities.size(); j++) { if (onlyReportAffectedIfModifiedSinceUpdate --- 62019,62023 ---- Vector possibilities = oldFrag.affectedBy(); int count = 0; ! if (possibilities != null) { for (int j = 0; j < possibilities.size(); j++) { if (onlyReportAffectedIfModifiedSinceUpdate *************** *** 62028,62031 **** --- 62032,62036 ---- affected.addElement(possibilities.elementAt(j)); } + } } } *************** *** 62151,62155 **** ((JavaClassFragment)cls).setClassDirty(); } ! return VectorUtils.make(calls); } object rgs:12187 --- 62156,62161 ---- ((JavaClassFragment)cls).setClassDirty(); } ! Vector result = VectorUtils.make(calls); ! return result; } object rgs:12187 *************** *** 62182,62186 **** ((JavaClassFragment)cls).setClassDirty(); } ! return VectorUtils.make(calls); } object rgs:12189 --- 62188,62193 ---- ((JavaClassFragment)cls).setClassDirty(); } ! Vector result = VectorUtils.make(calls); ! return result; } object rgs:12189 *************** *** 72041,72047 **** try { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); - // turn this back on later? - dbf.setValidating(false); builder = dbf.newDocumentBuilder(); } catch (ParserConfigurationException e) { Console.internalError(e); --- 72048,72061 ---- try { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); builder = dbf.newDocumentBuilder(); + // need to generalize this to select different language experts + builder.setEntityResolver(new org.xml.sax.EntityResolver() { + public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) { + if (publicId.equals("-//APACHE//DTD Documentation V1.1//EN")) { + return new org.xml.sax.InputSource(this.getClass().getResourceAsStream("dtd/document-v11.dtd")); + } + return null; + } + }); } catch (ParserConfigurationException e) { Console.internalError(e); *************** *** 81476,81479 **** --- 81490,81498 ---- section exports schin:1057 schin:1060 + schin:1207 + schin:1208 + schin:1209 + schin:1210 + schin:1211 schin:1058 object schin:1058 *************** *** 81483,81490 **** public static JavaRepositoryHelper JavaRepositorySet.getRepositoryHelper (String classpath) { ! // note: this is not 100% accurate since the bootstrap classloader should always be prepended ! String systemClassPath = ClassPath.getClassPath(); ! classpath = systemClassPath + File.pathSeparator + classpath; ! System.out.println("classpath is: " + classpath); for (Iterator i=repositories.iterator(); i.hasNext(); ) { --- 81502,81508 ---- public static JavaRepositoryHelper JavaRepositorySet.getRepositoryHelper (String classpath) { ! String bootstrapClasspath = getBootstrapClasspath(); ! classpath = bootstrapClasspath + File.pathSeparator + classpath; ! classpath = expandManifestClasspaths(classpath); for (Iterator i=repositories.iterator(); i.hasNext(); ) { *************** *** 81815,81818 **** --- 81833,81837 ---- schin:1108 schin:1109 + schin:1212 schin:1105 schin:1106 *************** *** 81876,81880 **** type=java section text schin:1109 ! static Fragment DocDocument.loadSection (FragmentReader reader) throws IOException { --- 81895,81899 ---- type=java section text schin:1109 ! static Fragment DocDocument.loadDocument (FragmentReader reader) throws IOException { *************** *** 81885,81889 **** } catch (Error e) { } String title = reader.getAttribute("title"); ! return new DocDocument(State.getObjectDatabase(), title, null, null); } object schin:1110 --- 81904,81910 ---- } catch (Error e) { } String title = reader.getAttribute("title"); ! DocDocument document = new DocDocument(State.getObjectDatabase(), title, null, null); ! document.filename = reader.getAttribute("filename"); ! return document; } object schin:1110 *************** *** 82818,82821 **** --- 82839,82953 ---- section text schin:1206 public static boolean Profile.graphicsAntialiasing; + object schin:1207 + pkg=org.browsecode.javaStuff + type=java + section text schin:1207 + // Converts a single path string into a list of strings by breaking it apart on the + // path separators. If a null list is passed in, a new one will be created. + static ArrayList JavaRepositorySet.pathToList (String path, ArrayList list) { + if (list == null) + list = new ArrayList(); + StringTokenizer st = new StringTokenizer(path, File.pathSeparator); + while (st.hasMoreTokens()) { + String fileName = st.nextToken(); + if (new File(fileName).exists()) + list.add(fileName); + } + return list; + } + object schin:1208 + pkg=org.browsecode.javaStuff + type=java + section text schin:1208 + // Converts a list of strings to a single path string by concatenating the list + // using the path separator. If a null StringBuffer is passed in, a new one will be created. + static StringBuffer JavaRepositorySet.listToPath (ArrayList list, StringBuffer result) { + if (result == null) + result = new StringBuffer(); + for (Iterator i = list.iterator(); i.hasNext(); ) { + if (result.length() > 0) + result.append(File.pathSeparatorChar); + result.append((String)i.next()); + } + return result; + } + object schin:1209 + pkg=org.browsecode.javaStuff + type=java + section text schin:1209 + // Recursively traverses from the given directory and adds all files with a + // *.jar or *.zip extension to the given list. + private static void JavaRepositorySet.extractJarsAndZips(File directory, ArrayList jarsAndZips) { + File[] files = directory.listFiles(); + for (int i=0; i<files.length; i++) { + if (files[i].isDirectory()) { + extractJarsAndZips(directory, jarsAndZips); + continue; + } + String name = files[i].getAbsolutePath(); + if (name.endsWith(".zip") || name.endsWith(".jar")) + jarsAndZips.add(name); + } + } + object schin:1210 + pkg=org.browsecode.javaStuff + type=java + section text schin:1210 + // Returns the bootstrap classpath with the ext.dirs properly expanded + static String JavaRepositorySet.getBootstrapClasspath () { + String extPath = System.getProperty("java.ext.dirs"); + String bootPath = System.getProperty("sun.boot.class.path"); + + ArrayList pathEntries = new ArrayList(); + ArrayList extDirs = pathToList(extPath, null); + for (Iterator i = extDirs.iterator(); i.hasNext(); ) { + File extDir = new File((String)i.next()); + extractJarsAndZips(extDir, pathEntries); + } + pathToList(bootPath, pathEntries); + + return listToPath(pathEntries, null).toString(); + } + object schin:1211 + pkg=org.browsecode.javaStuff + type=java + section text schin:1211 + // Work around a bug in BCEL where the manifest classpath is never searched + static String JavaRepositorySet.expandManifestClasspaths (String classpath) { + StringBuffer newClasspath = new StringBuffer(classpath); + ArrayList list = pathToList(classpath, null); + for (Iterator i=list.iterator(); i.hasNext(); ) { + String file = (String)i.next(); + if (file.endsWith(".zip") || file.endsWith(".jar")) try { + Manifest manifest = new JarFile(file).getManifest(); + Attributes attributes = manifest.getMainAttributes(); + if (attributes.containsKey(Attributes.Name.CLASS_PATH)) { + String rawPath = attributes.getValue(Attributes.Name.CLASS_PATH); + StringTokenizer st = new StringTokenizer(rawPath, " "); + while (st.hasMoreTokens()) { + File dep = new File(new File(file).getParent(), st.nextToken()); + if (dep.exists()) { + newClasspath.append(File.pathSeparatorChar); + newClasspath.append(dep.getAbsolutePath()); + } + } + } + } catch (IOException e) { + // ignore any exceptions + e.printStackTrace(); + } + } + return newClasspath.toString(); + } + object schin:1212 + pkg=org.browsecode.xml + type=java + section text schin:1212 + protected void DocDocument.saveCoreInfo (FragmentWriter writer) + throws IOException + { + writer.putAttribute("filename", filename); + super.saveCoreInfo(writer); + } object sjc:1 pkg=org.browsecode.sheets.dicer *************** *** 88156,88161 **** // Do the actual removing ! for (int i = 0; i < comps.length; i++) comps[i].getFragment().destroy(); } object wlott:812 --- 88288,88294 ---- // Do the actual removing ! for (int i = 0; i < comps.length; i++) { comps[i].getFragment().destroy(); + } } object wlott:812 *************** *** 88659,88663 **** // Also called by CC.unlinkedFromRoot. // ! // Remeber that a fragment can be in a list more than once, so being // removed from a list doesn't always mean that it can't still be our link // to root. --- 88792,88796 ---- // Also called by CC.unlinkedFromRoot. // ! // Remember that a fragment can be in a list more than once, so being // removed from a list doesn't always mean that it can't still be our link // to root. *************** *** 88756,88767 **** } } ! // If we didn't make it all the way to the root, then the parent's ! // claim to have a linkToRoot is dubious, but might still be correct ! // even if the current value no longer works. ! if (container.getOwner().considerAlternateLinks(unusable)) { ! linkToRootID = container.getArchivalReference(); ! stateChanged(); ! return true; ! } } } --- 88889,88894 ---- } } ! // We used to ask the owner as well, however, this was dubious ! // and lead to exponentially bad performance on large deletions. } } *************** *** 100824,100827 **** --- 100951,100955 ---- schin:1108 schin:1109 + schin:1212 ram:2244 schin:1105 *************** *** 102067,102071 **** nkramer:28438 object ram:2144 ! classpath=${classpath} project=Sheets root=src/java --- 102195,102199 ---- nkramer:28438 object ram:2144 ! classpath=${java.class.path} project=Sheets root=src/java *************** *** 102164,102167 **** --- 102292,102296 ---- ram:2490 object ram:2493 + filename=../documentation/content/xdocs/reference.xml title=Reference Manual type=doc-document *************** *** 103318,103321 **** --- 103447,103451 ---- ram:2881 object ram:2895 + filename=../documentation/content/xdocs/versioning.xml title=Versioning and the Repository type=doc-document *************** *** 105389,105392 **** --- 105519,105523 ---- rgs:13568 object rgs:13583 + filename=../documentation/content/xdocs/architecture.xml title=Architectural Overview type=doc-document *************** *** 106567,106570 **** --- 106698,106706 ---- schin:1057 schin:1060 + schin:1207 + schin:1208 + schin:1209 + schin:1210 + schin:1211 schin:1058 lightWeight:separator Index: build.xml =================================================================== RCS file: /cvsroot/sheets/sheets/build.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** build.xml 16 Dec 2002 11:38:15 -0000 1.15 --- build.xml 17 Jan 2003 22:42:39 -0000 1.16 *************** *** 6,9 **** --- 6,10 ---- <property name="lib" value="lib"/> <property name="graphics" value="graphics"/> + <property name="dtd" value="src/dtd"/> <property name="build" value="build"/> <property name="classes" value="${build}/sheets/classes"/> *************** *** 71,74 **** --- 72,80 ---- <copy todir="${classes}/graphics"> <fileset dir="${graphics}"/> + </copy> + + <!-- Copy over the dtds --> + <copy todir="${classes}/dtd"> + <fileset dir="${dtd}"/> </copy> </target> Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** todo.txt 23 Dec 2002 13:39:34 -0000 1.7 --- todo.txt 17 Jan 2003 22:42:39 -0000 1.8 *************** *** 1,6 **** --- 1,23 ---- Fixed in this snapshot so far: + Fixed the bytecode support so that it handles jar classpaths + Updated version of bcel.jar + Fixed import and export of DocDocument fragments to/from the dump file + Documents now export proper xml headers, and import public references properly. + Greatly improved performance of deleting large number of fragments + + Check-in Todo: + Add dtds to cvs + + Currently Working On: + Trying to get the basic document export and forrest generation working. + In the process of trying to get the basic header export working... + Next thing is to get forrest to run against the test directory so I don't have to bootstrap to test it out. Stuff I Want to do: + Fix the language expert so that it can lookup the right xml expert by public identifier. + Create a package/class-lookup routine for the bytecode support (modeled after the ClassPath.java bcel class) + Explore the possibility of using a ClassPathRepository instead of a Synthetic Repository (looks like it isn't worth the trouble, and probably won't work for a completely unrelated classpath) -- if the answer is no, mail the bcel group about the fix/workaround XML-ize this todo list so that it can be rendered on the web page by forrest, and create a sheets mode for editing it. + Add a status dialog on deletion of 100+ fragments to show progress release criteria: *************** *** 8,12 **** move graphics to org.browsecode.graphics fix docbook support - Fixed tab key for JDK1.4.1 new bugs: --- 25,28 ---- *************** *** 196,199 **** --- 212,216 ---- *) theserverside.com *) freshmeat.net + *) jsurfer.org *) www.javaworld.com *) www.javalobby.com |
From: <ox-...@us...> - 2003-01-17 22:43:03
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv19415/lib Modified Files: bcel.jar bootstrap-sheets.jar Log Message: Fixed the bytecode support so that it handles jar classpaths Updated version of bcel.jar Fixed import and export of DocDocument fragments to/from the dump file Documents now export proper xml headers, and import public references properly. Greatly improved performance of deleting large number of fragments Index: bcel.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bcel.jar,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsTVPGvC and /tmp/cvsYSTlf8 differ Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 Binary files /tmp/cvs1B5XHX and /tmp/cvsvwqq1L differ |
Update of /cvsroot/sheets/sheets/src/dtd In directory sc8-pr-cvs1:/tmp/cvs-serv19415/src/dtd Added Files: book-cocoon-v10.dtd changes-v11.dtd document-v11.dtd faq-v11.dtd specification-v11.dtd todo-v11.dtd Log Message: Fixed the bytecode support so that it handles jar classpaths Updated version of bcel.jar Fixed import and export of DocDocument fragments to/from the dump file Documents now export proper xml headers, and import public references properly. Greatly improved performance of deleting large number of fragments --- NEW FILE: book-cocoon-v10.dtd --- <!-- =================================================================== Apache Cocoon Documentation Book DTD (Version 1.0) PURPOSE: This DTD defines the */book.xml documentation configuration files. TYPICAL INVOCATION: <!DOCTYPE book PUBLIC "-//APACHE//DTD Cocoon Documentation Book Vx.yz//EN" "http://xml.apache.org/DTD/book-cocoon-vxyz.dtd"> where x := major version y := minor version z := status identifier (optional) NOTES: We need to replace this DTD with the proper one. We are only using this DTD to enable validation during "build docs" because every XML instance must declare its ruleset. This initial minimal DTD has been reverse-engineered from the structure of the current documents, e.g. docuemntation/xdocs/book.xml AUTHORS: David Crossley <cro...@ap...> FIXME: - find the proper DTD for book.xml CHANGE HISTORY: 20011031 Initial version. (DC) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!ELEMENT book (menu+)> <!ELEMENT menu (menu-item|external)*> <!ELEMENT menu-item EMPTY> <!ELEMENT external EMPTY> <!ATTLIST book software CDATA #REQUIRED title CDATA #REQUIRED copyright CDATA #REQUIRED xmlns:xlink CDATA #IMPLIED > <!ATTLIST menu label CDATA #REQUIRED > <!ATTLIST menu-item label CDATA #REQUIRED href CDATA #REQUIRED type (visible|hidden) "visible" > <!ATTLIST external label CDATA #REQUIRED href CDATA #REQUIRED type (visible|hidden) "visible" > <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> --- NEW FILE: changes-v11.dtd --- <!-- =================================================================== Apache Changes DTD (Version 1.1) PURPOSE: This DTD was developed to create a simple yet powerful document type for software development changes for use with the Apache projects. It is an XML-compliant DTD and it's maintained by the Apache XML project. TYPICAL INVOCATION: <!DOCTYPE document PUBLIC "-//APACHE//DTD Changes Vx.y//EN" "changes-vxy.dtd"> where x := major version y := minor version NOTES: It is important, expecially in open developped software projects, to keep track of software changes both to give users indications of bugs that might have been resolved, as well, and not less important, to provide credits for the support given to the project. It is considered vital to provide adequate payback using recognition and credits to let users and developers feel part of the community, thus increasing development power. AUTHORS: Stefano Mazzocchi <st...@ap...> FIXME: CHANGE HISTORY: [Version 1.0] 19991129 Initial version. (SM) 20000316 Added bugfixing attribute. (SM) [Version 1.1] 20011212 Used public identifiers for external entities (SM) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!-- =============================================================== --> <!-- Include the Documentation DTD --> <!-- =============================================================== --> <!ENTITY % document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "document-v11.dtd"> %document; <!-- =============================================================== --> <!-- Common entities --> <!-- =============================================================== --> <!ENTITY % types "add|remove|update|fix"> <!-- =============================================================== --> <!-- Document Type Definition --> <!-- =============================================================== --> <!ELEMENT changes (devs, release*)> <!ATTLIST changes %common.att; %title.att;> <!ELEMENT devs (person+)> <!ATTLIST devs %common.att;> <!ELEMENT release (action+)> <!ATTLIST release %common.att; version CDATA #REQUIRED date CDATA #REQUIRED> <!ELEMENT action (%content.mix;)*> <!ATTLIST action %common.att; dev IDREF #REQUIRED type (%types;) #IMPLIED due-to CDATA #IMPLIED due-to-email CDATA #IMPLIED fixes-bug CDATA #IMPLIED> <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> --- NEW FILE: document-v11.dtd --- <!-- =================================================================== Apache Documentation DTD (Version 1.1) PURPOSE: This DTD was developed to create a simple yet powerful document type for software documentation for use with the Apache projects. It is an XML-compliant DTD and it's maintained by the Apache XML project. TYPICAL INVOCATION: <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation Vx.y//EN" "document-vxy.dtd"> where x := major version y := minor version NOTES: Many of the design patterns used in this DTD were take from the W3C XML Specification DTD edited by Eve Maler <el...@ar...>. Where possible, great care has been used to reuse HTML tag names to reduce learning efforts and to allow HTML editors to be used for complex authorings like tables and lists. EXTENSIBILITY: This DTD includes several empty placeholders that can be used to extend it. These placeholders are implemented with empty entities. Here is the list of those empty entities and what they are used for: - local.inline: this entity should contain extended definitions of elements that can be used 'inline', or directly inside the content. An example for this entity could be <!ENTITY % local.inline "|citation"> - local.blocks: this entity should contain extended definitions of elements that behave as 'blocks', thus can be visually rendered as areas on the canvas. An example for this entity could be: <!ENTITY % local.blocks "|poem"> - local.sections: this entity should contain extended definitions of elements that behave as 'sections', thus can be considered containers of block-level elements. An example for this entity could be: <!ENTITY % local.sections "|chapter"> - local.headers: this entity should contain extended definitions of elements that behave as parts of the document header. An example for this header could be: <!ENTITY % local.headers ", notes?"> - local.footers: this entity should contain extended definitions of elements that behave as parts of the document footer. An example for this header could be: <!ENTITY % local.footers ", annotations*"> AUTHORS: Stefano Mazzocchi <st...@ap...> Steven Noels <st...@ou...> FIXME: - should "form" tags be included? CHANGE HISTORY: [Version 1.0] 19991121 Initial version. (SM) 19991123 Replaced "res" with more standard "strong" for emphasis. (SM) 19991124 Added "fork" element for window forking behavior. (SM) 19991124 Added "img-inline" element to separate from "img". (SM) 19991129 Removed "affiliation" from "author". (SM) 19991129 Made "author" empty and moved "name|email" as attributes. (SM) 19991215 Simplified table section. (SM) 19991215 Changed "img-block" in more friendly "figure". (SM) 20000125 Added the "icon" image. (SM) 20000126 Allowed "anchor" in all levels. (SM) 20000404 Removed the "role" attribute from common-xxx.att. (SM) 20000815 Allowed "code" inside "strong" and "em". (SM) [Version 1.1] 20011212 Used public identifiers for external entities. (SM) 20011212 Removed xlink attributes since not used. (SM) 20011212 Removed "connect" since not required at this level. (SM) 20011218 Added "warning" as a block level object. (SM) 20011218 Removed explicitly numbered sections ("s1|s2|s3|s4"). (SM) 20011218 Added "section" element. (SM) 20011218 Allowed "body" to have blocks without a section. (SM) 20011218 Removed "sl" since not really different from "ul". (SM) 20020214 Moved empty placeholder entity declarations up front (SNS) 20020214 Corrected content model of content.mix parameter entity (SNS) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!-- =============================================================== --> <!-- Common character entities (included from external file) --> <!-- =============================================================== --> <!ENTITY % ISOlat1 PUBLIC "ISO 8879:1986//ENTITIES Added Latin 1//EN//XML" "ISOlat1.pen"> %ISOlat1; <!ENTITY % ISOpub PUBLIC "ISO 8879:1986//ENTITIES Publishing//EN//XML" "ISOpub.pen"> %ISOpub; <!ENTITY % ISOtech PUBLIC "ISO 8879:1986//ENTITIES General Technical//EN//XML" "ISOtech.pen"> %ISOtech; <!ENTITY % ISOnum PUBLIC "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML" "ISOnum.pen"> %ISOnum; <!ENTITY % ISOdia PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML" "ISOdia.pen"> %ISOdia; <!-- =============================================================== --> <!-- Useful entities for increased DTD readability --> <!-- =============================================================== --> <!ENTITY % text "#PCDATA"> <!-- Entities referred to later on are defined up front --> <!ENTITY % markup "strong|em|code|sub|sup"> <!ENTITY % special-inline "br|img|icon"> <!ENTITY % links "link|jump|fork"> <!ENTITY % paragraphs "p|source|note|warning|fixme"> <!ENTITY % tables "table"> <!ENTITY % lists "ol|ul|dl"> <!ENTITY % special-blocks "figure|anchor"> <!-- =============================================================== --> <!-- Entities for general XML compliance --> <!-- =============================================================== --> <!-- Common attributes Every element has an ID attribute (sometimes required, but usually optional) for links. %common.att; is for common attributes where the ID is optional, and %common-idreq.att; is for common attributes where the ID is required. --> <!ENTITY % common.att 'id ID #IMPLIED xml:lang NMTOKEN #IMPLIED'> <!ENTITY % common-idreq.att 'id ID #REQUIRED xml:lang NMTOKEN #IMPLIED'> <!-- xml:space attribute =============================================== Indicates that the element contains white space that the formatter or other application should retain, as appropriate to its function. ==================================================================== --> <!ENTITY % xmlspace.att 'xml:space (default|preserve) #FIXED "preserve"'> <!-- def attribute ===================================================== Points to the element where the relevant definition can be found, using the IDREF mechanism. %def.att; is for optional def attributes, and %def-req.att; is for required def attributes. ==================================================================== --> <!ENTITY % def.att 'def IDREF #IMPLIED'> <!ENTITY % def-req.att 'def IDREF #REQUIRED'> <!-- ref attribute ===================================================== Points to the element where more information can be found, using the IDREF mechanism. %ref.att; is for optional ref attributes, and %ref-req.att; is for required ref attributes. ================================================================== --> <!ENTITY % ref.att 'ref IDREF #IMPLIED'> <!ENTITY % ref-req.att 'ref IDREF #REQUIRED'> <!-- =============================================================== --> <!-- Entities for general usage --> <!-- =============================================================== --> <!-- Key attribute ===================================================== Optionally provides a sorting or indexing key, for cases when the element content is inappropriate for this purpose. ==================================================================== --> <!ENTITY % key.att 'key CDATA #IMPLIED'> <!-- Title attributes ================================================== Indicates that the element requires to have a title attribute. ==================================================================== --> <!ENTITY % title.att 'title CDATA #REQUIRED'> <!-- Name attributes ================================================== Indicates that the element requires to have a name attribute. ==================================================================== --> <!ENTITY % name.att 'name CDATA #REQUIRED'> <!-- Email attributes ================================================== Indicates that the element requires to have an email attribute. ==================================================================== --> <!ENTITY % email.att 'email CDATA #REQUIRED'> <!-- Link attributes =================================================== Indicates that the element requires to have hyperlink attributes. ==================================================================== --> <!ENTITY % link.att 'href CDATA #IMPLIED role CDATA #IMPLIED title CDATA #IMPLIED '> <!-- =============================================================== --> <!-- General definitions --> <!-- =============================================================== --> <!-- A person is a general human entity --> <!ELEMENT person EMPTY> <!ATTLIST person %common.att; %name.att; %email.att;> <!-- =============================================================== --> <!-- Content definitions --> <!-- =============================================================== --> <!ENTITY % local.inline ""> <!ENTITY % link-content.mix "%text;|%markup;|%special-inline; %local.inline;"> <!ENTITY % content.mix "%link-content.mix;|%links;"> <!-- ==================================================== --> <!-- Phrase Markup --> <!-- ==================================================== --> <!-- Strong (typically bold) --> <!ELEMENT strong (%text;|code)*> <!ATTLIST strong %common.att;> <!-- Emphasis (typically italic) --> <!ELEMENT em (%text;|code)*> <!ATTLIST em %common.att;> <!-- Code (typically monospaced) --> <!ELEMENT code (%text;)> <!ATTLIST code %common.att;> <!-- Superscript (typically smaller and higher) --> <!ELEMENT sup (%text;)> <!ATTLIST sup %common.att;> <!-- Subscript (typically smaller and lower) --> <!ELEMENT sub (%text;)> <!ATTLIST sub %common.att;> <!-- ==================================================== --> <!-- Hypertextual Links --> <!-- ==================================================== --> <!-- hyperlink (equivalent of <a ...>) --> <!ELEMENT link (%link-content.mix;)*> <!ATTLIST link %common.att; %link.att;> <!-- windows-replacing link (equivalent of <a ... target="_top">) --> <!ELEMENT jump (%link-content.mix;)*> <!ATTLIST jump %common.att; %link.att;> <!-- window-forking link (equivalent of <a ... target="_new">) --> <!ELEMENT fork (%link-content.mix;)*> <!ATTLIST fork %common.att; %link.att;> <!-- ==================================================== --> <!-- Specials --> <!-- ==================================================== --> <!-- Breakline Object (typically forces line break) --> <!ELEMENT br EMPTY> <!ATTLIST br %common.att;> <!-- Image Object (typically an inlined image) --> <!ELEMENT img EMPTY> <!ATTLIST img src CDATA #REQUIRED alt CDATA #REQUIRED height CDATA #IMPLIED width CDATA #IMPLIED usemap CDATA #IMPLIED ismap (ismap) #IMPLIED %common.att;> <!-- Image Icon (typically an inlined image placed as graphical item) --> <!ELEMENT icon EMPTY> <!ATTLIST icon src CDATA #REQUIRED alt CDATA #REQUIRED height CDATA #IMPLIED width CDATA #IMPLIED %common.att;> <!-- =============================================================== --> <!-- Blocks definitions --> <!-- =============================================================== --> <!ENTITY % local.blocks ""> <!ENTITY % blocks "%paragraphs;|%tables;|%lists;|%special-blocks; %local.blocks;"> <!-- ==================================================== --> <!-- Paragraphs --> <!-- ==================================================== --> <!-- Text Paragraph (normally vertically space delimited) --> <!ELEMENT p (%content.mix;)*> <!ATTLIST p %common.att;> <!-- Source Paragraph (normally space is preserved) --> <!ELEMENT source (%content.mix;)*> <!ATTLIST source %common.att; %xmlspace.att;> <!-- Note Paragraph (normally shown encapsulated) --> <!ELEMENT note (%content.mix;)*> <!ATTLIST note %common.att;> <!-- Warning Paragraph (normally shown with eye-catching colors) --> <!ELEMENT warning (%content.mix;)*> <!ATTLIST warning %common.att;> <!-- Fixme Paragraph (normally not shown) --> <!ELEMENT fixme (%content.mix;)*> <!ATTLIST fixme author CDATA #REQUIRED %common.att;> <!-- ==================================================== --> <!-- Tables --> <!-- ==================================================== --> <!-- Attributes that indicate the spanning of the table cell --> <!ENTITY % cell.span 'colspan CDATA "1" rowspan CDATA "1"'> <!-- Table element --> <!ELEMENT table (caption?, tr+)> <!ATTLIST table %common.att;> <!-- The table title --> <!ELEMENT caption (%content.mix;)*> <!ATTLIST caption %common.att;> <!-- The table row element --> <!ELEMENT tr (th|td)+> <!ATTLIST tr %common.att;> <!-- The table row header element --> <!ELEMENT th (%content.mix;)*> <!ATTLIST th %common.att; %cell.span;> <!-- The table row description element --> <!ELEMENT td (%content.mix;)*> <!ATTLIST td %common.att; %cell.span;> <!-- ==================================================== --> <!-- Lists --> <!-- ==================================================== --> <!-- List item --> <!ELEMENT li (%content.mix;|%lists;)*> <!ATTLIST li %common.att;> <!-- Unordered list (typically bulleted) --> <!ELEMENT ul (li|%lists;)+> <!-- spacing attribute: Use "normal" to get normal vertical spacing for items; use "compact" to get less spacing. The default is dependent on the stylesheet. --> <!ATTLIST ul %common.att; spacing (normal|compact) #IMPLIED> <!-- Ordered list (typically numbered) --> <!ELEMENT ol (li|%lists;)+> <!-- spacing attribute: Use "normal" to get normal vertical spacing for items; use "compact" to get less spacing. The default is dependent on the stylesheet. --> <!ATTLIST ol %common.att; spacing (normal|compact) #IMPLIED> <!-- Definition list (typically two-column) --> <!ELEMENT dl (dt,dd)+> <!ATTLIST dl %common.att;> <!-- Definition term --> <!ELEMENT dt (%content.mix;)*> <!ATTLIST dt %common.att;> <!-- Definition description --> <!ELEMENT dd (%content.mix;)*> <!ATTLIST dd %common.att;> <!-- ==================================================== --> <!-- Special Blocks --> <!-- ==================================================== --> <!-- Image Block (typically a separated and centered image) --> <!ELEMENT figure EMPTY> <!ATTLIST figure src CDATA #REQUIRED alt CDATA #REQUIRED height CDATA #IMPLIED width CDATA #IMPLIED usemap CDATA #IMPLIED ismap (ismap) #IMPLIED %common.att;> <!-- anchor point (equivalent of <a name="...">, typically not rendered) --> <!ELEMENT anchor EMPTY> <!ATTLIST anchor %common-idreq.att;> <!-- =============================================================== --> <!-- Document --> <!-- =============================================================== --> <!ELEMENT document (header?, body, footer?)> <!ATTLIST document %common.att;> <!-- ==================================================== --> <!-- Header --> <!-- ==================================================== --> <!ENTITY % local.headers ""> <!ELEMENT header (title, subtitle?, version?, type?, authors, notice*, abstract? %local.headers;)> <!ATTLIST header %common.att;> <!ELEMENT title (%text;)> <!ATTLIST title %common.att;> <!ELEMENT subtitle (%text;)> <!ATTLIST subtitle %common.att;> <!ELEMENT version (%text;)> <!ATTLIST version %common.att;> <!ELEMENT type (%text;)> <!ATTLIST type %common.att;> <!ELEMENT authors (person+)> <!ATTLIST authors %common.att;> <!ELEMENT notice (%content.mix;)*> <!ATTLIST notice %common.att;> <!ELEMENT abstract (%content.mix;)*> <!ATTLIST abstract %common.att;> <!-- ==================================================== --> <!-- Body --> <!-- ==================================================== --> <!ENTITY % local.sections ""> <!ENTITY % sections "section %local.sections;"> <!ELEMENT body (%sections;|%blocks;)+> <!ATTLIST body %common.att;> <!ELEMENT section (%sections;|%blocks;)*> <!ATTLIST section %title.att; %common.att;> <!-- ==================================================== --> <!-- Footer --> <!-- ==================================================== --> <!ENTITY % local.footers ""> <!ELEMENT footer (legal %local.footers;)> <!ELEMENT legal (%content.mix;)*> <!ATTLIST legal %common.att;> <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> --- NEW FILE: faq-v11.dtd --- <!-- =================================================================== Apache FAQ DTD (Version 1.1) PURPOSE: This DTD was developed to create a simple yet powerful document type for software FAQ's for use with the Apache projects. It is an XML-compliant DTD and it's maintained by the Apache XML project. TYPICAL INVOCATION: <!DOCTYPE document PUBLIC "-//APACHE//DTD FAQ Vx.y//EN" "faq-vxy.dtd"> where x := major version y := minor version NOTES: FAQs represent a powerful knowledge base and a very good way of solving common user problems reducing messages on mail lists and reducing the effort required for software installation and usage. Thid DTD want to be a common format for FAQ interchange to allow FAQ-O-Matic-type workgroup services to be published in other formats as well as enhancing data interchange. AUTHORS: Stefano Mazzocchi <st...@ap...> FIXME: CHANGE HISTORY: 19991129 Initial version. (SM) 20011212 Used public identifiers for external entities (SM) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!-- =============================================================== --> <!-- Include the Documentation DTD --> <!-- =============================================================== --> <!ENTITY % document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "document-v11.dtd"> %document; <!-- =============================================================== --> <!-- Document Type Definition --> <!-- =============================================================== --> <!ELEMENT faqs (authors?, faq)+> <!ATTLIST faqs %common.att; %title.att;> <!ELEMENT faq (question, answer)> <!ATTLIST faq %common.att;> <!ELEMENT question (%content.mix;)*> <!ATTLIST question %common.att;> <!ELEMENT answer (%blocks;)*> <!ATTLIST answer author IDREF #IMPLIED> <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> --- NEW FILE: specification-v11.dtd --- <!-- =================================================================== Apache Specification DTD (Version 1.1) PURPOSE: This DTD was developed to create a simple yet powerful document type for software specifications for use with the Apache projects. It is an XML-compliant DTD and it's maintained by the Apache XML project. TYPICAL INVOCATION: <!DOCTYPE document PUBLIC "-//APACHE//DTD Specification Vx.y//EN" "specification-vxy.dtd"> where x := major version y := minor version NOTES: AUTHORS: Stefano Mazzocchi <st...@ap...> FIXME: CHANGE HISTORY: [Version 1.0] 19991129 Initial version. (SM) [Version 1.1] 20011212 Used public identifiers for external entities (SM) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!-- =============================================================== --> <!-- Include the Documentation DTD --> <!-- =============================================================== --> <!ENTITY % document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "document-v11.dtd"> %document; <!-- =============================================================== --> <!-- Extend the Documentation DTD --> <!-- =============================================================== --> <!-- extend the local.xxx entities --> <!ENTITY % local.blocks "|bl"> <!-- =============================================================== --> <!-- Document Type Definition --> <!-- =============================================================== --> <!ELEMENT specification (header?, body, appendices?, footer?)> <!ATTLIST specification %common.att;> <!ELEMENT appendices (%sections;)+> <!ATTLIST appendices %common.att;> <!-- =============================================================== --> <!-- Bibliography List --> <!-- =============================================================== --> <!-- Bibliography list --> <!ELEMENT bl (bi)+> <!ATTLIST bl %common.att;> <!-- Book item --> <!ELEMENT bi EMPTY> <!ATTLIST bi %common.att; %name.att; %title.att; %link.att; authors CDATA #REQUIRED date CDATA #IMPLIED> <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> --- NEW FILE: todo-v11.dtd --- <!-- =================================================================== Apache Todos DTD (Version 1.1) PURPOSE: This DTD was developed to create a simple yet powerful document type for software development todo lists for use with the Apache projects. It is an XML-compliant DTD and it's maintained by the Apache XML project. TYPICAL INVOCATION: <!DOCTYPE document PUBLIC "-//APACHE//DTD Todo Vx.y//EN" "todo-vxy.dtd"> where x := major version y := minor version NOTES: It is important, expecially in open developped software projects, to keep track of software changes that need to be done, planned features, development assignment, etc. in order to allow better work parallelization and create an entry point for people that want to help. This DTD wants to provide a solid foundation to provide such information and to allow it to be published as well as distributed in a common format. AUTHORS: Stefano Mazzocchi <st...@ap...> FIXME: - do we need anymore working contexts? (SM) CHANGE HISTORY: [Version 1.0] 19991129 Initial version. (SM) 19991225 Added actions element for better structure (SM) [Version 1.1] 20011212 Used public identifiers for external entities (SM) COPYRIGHT: Copyright (c) @year@ The Apache Software Foundation. Permission to copy in any form is granted provided this notice is included in all copies. Permission to redistribute is granted provided this file is distributed untouched in all its parts and included files. ==================================================================== --> <!-- =============================================================== --> <!-- Include the Documentation DTD --> <!-- =============================================================== --> <!ENTITY % document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "document-v11.dtd"> %document; <!-- =============================================================== --> <!-- Common entities --> <!-- =============================================================== --> <!ENTITY % priorities "showstopper|high|medium|low|wish|dream"> <!ENTITY % contexts "build|docs|code|admin|design"> <!-- =============================================================== --> <!-- Document Type Definition --> <!-- =============================================================== --> <!ELEMENT todo (devs, actions*)> <!ATTLIST todo %common.att; %title.att;> <!ELEMENT devs (person+)> <!ATTLIST devs %common.att;> <!ELEMENT actions (action+)> <!ATTLIST actions %common.att; priority (%priorities;) #IMPLIED> <!ELEMENT action (%content.mix;)*> <!ATTLIST action %common.att; assigned-to IDREF #IMPLIED context (%contexts;) #REQUIRED> <!-- =============================================================== --> <!-- End of DTD --> <!-- =============================================================== --> |
From: <ox-...@us...> - 2003-01-17 22:43:00
|
Update of /cvsroot/sheets/sheets/src/documentation In directory sc8-pr-cvs1:/tmp/cvs-serv19415/src/documentation Modified Files: skinconf.xml Log Message: Fixed the bytecode support so that it handles jar classpaths Updated version of bcel.jar Fixed import and export of DocDocument fragments to/from the dump file Documents now export proper xml headers, and import public references properly. Greatly improved performance of deleting large number of fragments Index: skinconf.xml =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/skinconf.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** skinconf.xml 6 Dec 2002 12:54:44 -0000 1.2 --- skinconf.xml 17 Jan 2003 22:42:57 -0000 1.3 *************** *** 7,16 **** <project-url>http://www.browsecode.org/</project-url> <project-logo>resources/images/sheets-logo.png</project-logo> ! <host-url>http://sourceforge.net/projects/sheets/</host-url> <host-logo>http://sourceforge.net/sflogo.php?group_id=53805&type=1</host-logo> <year>2000-2002</year> <vendor>Sheets Project</vendor> <trail> ! <link1 name="sheets at sourceforge" href="http://sourceforge.net/"/> <link2 name="sheets" href="http://www.browsecode.org/"/> <link3 name="" href=""/> --- 7,16 ---- <project-url>http://www.browsecode.org/</project-url> <project-logo>resources/images/sheets-logo.png</project-logo> ! <host-url>http://sourceforge.net/</host-url> <host-logo>http://sourceforge.net/sflogo.php?group_id=53805&type=1</host-logo> <year>2000-2002</year> <vendor>Sheets Project</vendor> <trail> ! <link1 name="sheets at sourceforge" href="http://sourceforge.net/projects/sheets"/> <link2 name="sheets" href="http://www.browsecode.org/"/> <link3 name="" href=""/> |
From: <ox-...@us...> - 2003-01-17 22:43:00
|
Update of /cvsroot/sheets/sheets/src/documentation/content/xdocs In directory sc8-pr-cvs1:/tmp/cvs-serv19415/src/documentation/content/xdocs Modified Files: index.xml Log Message: Fixed the bytecode support so that it handles jar classpaths Updated version of bcel.jar Fixed import and export of DocDocument fragments to/from the dump file Documents now export proper xml headers, and import public references properly. Greatly improved performance of deleting large number of fragments Index: index.xml =================================================================== RCS file: /cvsroot/sheets/sheets/src/documentation/content/xdocs/index.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** index.xml 28 Nov 2002 06:54:58 -0000 1.1 --- index.xml 17 Jan 2003 22:42:57 -0000 1.2 *************** *** 14,19 **** <p>The <strong>Sheets Hypertext Environment for Editing Text and Structure</strong> is an integrated coding and documentation ! system targeted at projects with large numbers of widely- ! dispersed collaborators.</p> </section> </body> --- 14,19 ---- <p>The <strong>Sheets Hypertext Environment for Editing Text and Structure</strong> is an integrated coding and documentation ! system targeted at projects with large numbers of ! widely-dispersed collaborators.</p> </section> </body> |
From: <ox-...@us...> - 2003-01-17 22:29:34
|
Update of /cvsroot/sheets/sheets/src/dtd In directory sc8-pr-cvs1:/tmp/cvs-serv18864/dtd Log Message: Directory /cvsroot/sheets/sheets/src/dtd added to the repository |
From: <ox-...@us...> - 2002-12-23 13:40:11
|
Update of /cvsroot/sheets/sheets In directory sc8-pr-cvs1:/tmp/cvs-serv20016 Modified Files: .sheetsrc Sheets.sheets todo.txt Log Message: Now allow the user to reference any properties (not just classpath) by the variable syntax (${}) Added a home button to the toolbar (takes you to the root sheet) Fixed some bugs in the classpath conversion algorithm. It now takes any path- like structure and normalizes it for the current platform. Added a shadow to the selection to make it look inset Added a border to the text selections to make them stand out more Anti-aliasing now globally controlled by a variable for text/graphics separately Index: .sheetsrc =================================================================== RCS file: /cvsroot/sheets/sheets/.sheetsrc,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** .sheetsrc 16 Dec 2002 11:38:12 -0000 1.5 --- .sheetsrc 23 Dec 2002 13:39:31 -0000 1.6 *************** *** 28,32 **** set context-help-delay 100 ! set text-anti-aliasing true set toc-width 20 set editor-width 50 --- 28,32 ---- set context-help-delay 100 ! set graphics-anti-aliasing true set toc-width 20 set editor-width 50 Index: Sheets.sheets =================================================================== RCS file: /cvsroot/sheets/sheets/Sheets.sheets,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** Sheets.sheets 16 Dec 2002 11:38:13 -0000 1.29 --- Sheets.sheets 23 Dec 2002 13:39:31 -0000 1.30 *************** *** 213,222 **** section text %LOGNAME%:44 // Paints the main contents of the view (as opposed to the attributes). ! abstract public void Viewer.paintContents (Graphics g, int top, int bottom); object %LOGNAME%:110 pkg=org.browsecode.sheets type=java section text %LOGNAME%:110 ! public void ViewPanel.Painter.paintCanvas (Graphics g) { // JDK1.2 performs terribly if you give it an on-screen graphics object, // so hack around the problem. [...1936 lines suppressed...] + schin:1196 schin:128 schin:129 *************** *** 106595,106598 **** --- 106689,106702 ---- schin:1171 schin:1172 + object schin:1203 + title=PropertyNotFoundException + type=sheet + section text schin:1203 + PropertyNotFoundException + section components schin:1203 + schin:1199 + schin:1200 + schin:1201 + schin:1202 object sjc:6 title=ClickableLabel Index: todo.txt =================================================================== RCS file: /cvsroot/sheets/sheets/todo.txt,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** todo.txt 16 Dec 2002 11:38:15 -0000 1.6 --- todo.txt 23 Dec 2002 13:39:34 -0000 1.7 *************** *** 1,4 **** Fixed in this snapshot so far: ! x release criteria: --- 1,6 ---- Fixed in this snapshot so far: ! ! Stuff I Want to do: ! XML-ize this todo list so that it can be rendered on the web page by forrest, and create a sheets mode for editing it. release criteria: *************** *** 9,19 **** new bugs: ! On file header change, re-export all affected fragments ! Need to invalidate all exports in project on root change ! Need to flush JavaRepositoryHelper on classpath change (is this being done already?) Focus traversal broken for cycling through ViewPanel Can't use keyboard shortcuts in toolbar VTables completely broken? - Anti-aliasing turns on when drawing widgets -- should be globally controlled by a variable for text/widgets separately PoE error on close related to deleting a file header? Compile doesn't work when you Compile from the Dialog --- 11,33 ---- new bugs: ! Random NPE when going forward or backwards while a fragment that is being edited is selected. ! Invalidated a component while validating it with the following stack trace: ! at org.browsecode.sheets.Viewer.invalidate(Viewer.java:697) ! at org.browsecode.sheets.RichTextViewer.setWidth(RichTextViewer.java:523 ! ) ! at org.browsecode.sheets.ListViewer.setWidth(ListViewer.java:688) ! at org.browsecode.sheets.AbstractSheetViewer.setWidth(AbstractSheetViewe ! r.java:221) ! at org.browsecode.sheets.ViewPanel.computeFields(ViewPanel.java:688) ! at org.browsecode.sheets.ViewPanel.doLayout(ViewPanel.java:138) ! at java.awt.Container.validateTree(Container.java:1089) ! at java.awt.Container.validateTree(Container.java:1096) ! at java.awt.Container.validateTree(Container.java:1096) ! at java.awt.Container.validate(Container.java:1064) ! On file header change, dirty (touch, not invalidate) all affected fragments ! Need to invalidate all exports in project on root or classpath (touch, not invalidate) change Focus traversal broken for cycling through ViewPanel Can't use keyboard shortcuts in toolbar VTables completely broken? PoE error on close related to deleting a file header? Compile doesn't work when you Compile from the Dialog *************** *** 26,30 **** Property Management: Add classpath property configuration to new project wizard - Allow the user to reference any properties (not just classpath) by the variable syntax (${}) * Graphics: --- 40,43 ---- *************** *** 32,36 **** * Click directly on arrow to close (don't permit random clicks in vertical bar of ToC) * Implement rollovers on arrows, control blocks, and attributes - * Add bevel to sheet editing background Add bevel to ok/cancel buttons and reverse bevel in edit area (and fix edit area color) Put in new logo (with an indeterminate progress bar for now) --- 45,48 ---- *************** *** 72,76 **** * ByteCode Completion - * Change ${classpath} to be ${java.class.path} and handle general property lookup Fix a few odd cases ("System.out.println") Need to have repository traverse jars with embedded classpaths --- 84,87 ---- |
From: <ox-...@us...> - 2002-12-23 13:39:41
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv20016/lib Modified Files: bootstrap-sheets.jar Log Message: Now allow the user to reference any properties (not just classpath) by the variable syntax (${}) Added a home button to the toolbar (takes you to the root sheet) Fixed some bugs in the classpath conversion algorithm. It now takes any path- like structure and normalizes it for the current platform. Added a shadow to the selection to make it look inset Added a border to the text selections to make them stand out more Anti-aliasing now globally controlled by a variable for text/graphics separately Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 Binary files /tmp/cvsRfJ10e and /tmp/cvsbV1MWM differ |
From: <ox-...@us...> - 2002-12-16 11:38:20
|
Update of /cvsroot/sheets/sheets/lib In directory sc8-pr-cvs1:/tmp/cvs-serv32234/lib Modified Files: bootstrap-sheets.jar Log Message: Really fixed the context completion npes? x2 Fixed font sizing problems in the TOC Made changes to the sheets documentation to forrest compatible tags Fixed an NPE when editing a doc fragment open in two locations at the same time Fixed the task name for the Transform to Document command Fixed a ClassCastException on tab completion Fixed a problem changing sheet titles and descriptions that would cause graphics corruption Changed sheets build to include classpath Index: bootstrap-sheets.jar =================================================================== RCS file: /cvsroot/sheets/sheets/lib/bootstrap-sheets.jar,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 Binary files /tmp/cvsUzlaee and /tmp/cvsnQml8I differ |